Merge tag 'debian/0.29.3-1'
authorDavid Bremner <david@tethera.net>
Wed, 27 Nov 2019 12:45:43 +0000 (08:45 -0400)
committerDavid Bremner <david@tethera.net>
Wed, 27 Nov 2019 12:45:43 +0000 (08:45 -0400)
notmuch release 0.29.3-1 for unstable (sid) [dgit]

[dgit distro=debian no-split --quilt=linear]

1  2 
lib/config.cc

diff --combined lib/config.cc
index 8ee4da01a47dee0c6bf6cd4f3f42cd29854a9e48,a8bcdf831b453d93c4f8b4a43c2b7dd0d43e8cda..292f0288d7ef2f95e171efe9bf63b4bd8fe42c64
@@@ -58,7 -58,7 +58,7 @@@ notmuch_database_set_config (notmuch_da
        status = NOTMUCH_STATUS_XAPIAN_EXCEPTION;
        notmuch->exception_reported = true;
        _notmuch_database_log (notmuch, "Error: A Xapian exception occurred setting metadata: %s\n",
 -                             error.get_msg().c_str());
 +                             error.get_msg ().c_str ());
      }
      return NOTMUCH_STATUS_SUCCESS;
  }
@@@ -76,7 -76,7 +76,7 @@@ _metadata_value (notmuch_database_t *no
        status = NOTMUCH_STATUS_XAPIAN_EXCEPTION;
        notmuch->exception_reported = true;
        _notmuch_database_log (notmuch, "Error: A Xapian exception occurred getting metadata: %s\n",
 -                             error.get_msg().c_str());
 +                             error.get_msg ().c_str ());
      }
      return status;
  }
@@@ -123,11 -123,11 +123,11 @@@ notmuch_database_get_config_list (notmu
      try {
  
        new(&(list->iterator)) Xapian::TermIterator (notmuch->xapian_db->metadata_keys_begin
 -                                                   (CONFIG_PREFIX + (prefix ? prefix : "")));
 +                                                       (CONFIG_PREFIX + (prefix ? prefix : "")));
  
      } catch (const Xapian::Error &error) {
        _notmuch_database_log (notmuch, "A Xapian exception occurred getting metadata iterator: %s.\n",
 -                             error.get_msg().c_str());
 +                             error.get_msg ().c_str ());
        notmuch->exception_reported = true;
        status = NOTMUCH_STATUS_XAPIAN_EXCEPTION;
      }
@@@ -150,13 -150,17 +150,17 @@@ notmuch_config_list_valid (notmuch_conf
      return true;
  }
  
+ static inline char * _key_from_iterator (notmuch_config_list_t *list) {
+     return talloc_strdup (list, (*list->iterator).c_str () + CONFIG_PREFIX.length ());
+ }
  const char *
  notmuch_config_list_key (notmuch_config_list_t *list)
  {
      if (list->current_key)
        talloc_free (list->current_key);
  
-     list->current_key = talloc_strdup (list, (*list->iterator).c_str () + CONFIG_PREFIX.length ());
+     list->current_key = _key_from_iterator (list);
  
      return list->current_key;
  }
@@@ -166,7 -170,7 +170,7 @@@ notmuch_config_list_value (notmuch_conf
  {
      std::string strval;
      notmuch_status_t status;
-     const char *key = notmuch_config_list_key (list);
+     char *key = _key_from_iterator (list);
  
      /* TODO: better error reporting?? */
      status = _metadata_value (list->notmuch, key, strval);
        talloc_free (list->current_val);
  
      list->current_val = talloc_strdup (list, strval.c_str ());
+     talloc_free (key);
      return list->current_val;
  }