X-Git-Url: https://git.notmuchmail.org/git?p=notmuch;a=blobdiff_plain;f=lib%2Fmessage.cc;h=0fc54668cb9a362454551d8880bade40b7c6583e;hp=82e8fce7edca3953a6503b5d2f5e7e76208c5200;hb=a274848f95e3eb074b48d14cf22774c75b80c735;hpb=1a38cb841ca4ce87f6b57f9b1baf1a5f8b8e35b7 diff --git a/lib/message.cc b/lib/message.cc index 82e8fce7..0fc54668 100644 --- a/lib/message.cc +++ b/lib/message.cc @@ -441,7 +441,19 @@ notmuch_message_get_filename (notmuch_message_t *message) if (i == message->doc.termlist_end () || strncmp (direntry, prefix, prefix_len)) { - INTERNAL_ERROR ("message with no filename"); + /* A message document created by an old version of notmuch + * (prior to rename support) will have the filename in the + * data of the document rather than as a file-direntry term. */ + const char *data; + + data = message->doc.get_data ().c_str (); + + if (data == NULL) + INTERNAL_ERROR ("message with no filename"); + + message->filename = talloc_strdup (message, data); + + return message->filename; } direntry += prefix_len;