]> git.notmuchmail.org Git - notmuch/blobdiff - lib/message.cc
lib/message.cc: stale pointer bug (v3)
[notmuch] / lib / message.cc
index 8720c1b542d839a24613991b4b425fe03f65e1e3..c4261e614d4eb83b605bd2312cad727a57b9ab95 100644 (file)
@@ -266,18 +266,18 @@ _notmuch_message_get_term (notmuch_message_t *message,
                           const char *prefix)
 {
     int prefix_len = strlen (prefix);
-    const char *term = NULL;
     char *value;
 
     i.skip_to (prefix);
 
-    if (i != end)
-       term = (*i).c_str ();
+    if (i == end)
+       return NULL;
 
-    if (!term || strncmp (term, prefix, prefix_len))
+    std::string term = *i;
+    if (strncmp (term.c_str(), prefix, prefix_len))
        return NULL;
 
-    value = talloc_strdup (message, term + prefix_len);
+    value = talloc_strdup (message, term.c_str() + prefix_len);
 
 #if DEBUG_DATABASE_SANITY
     i++;