From: Carl Worth Date: Tue, 17 Nov 2009 16:50:14 +0000 (-0800) Subject: add_message: Avoid a memory leak when user holds on to message return. X-Git-Tag: 0.1~481 X-Git-Url: http://git.tremily.us/?a=commitdiff_plain;h=0dab6a2c1e8b59ac681f48417c0f06e88f73cd3e;p=notmuch.git add_message: Avoid a memory leak when user holds on to message return. When this function was originally written, the 'message' object was always destroyed locally, so I thought it would be good to use a NULL talloc context to make it more obvious if there was any leak. Since then, however, this function has been changed to optionally return the added message, and in that case we *don't* free the message locally, so let's let the database be the talloc context. --- diff --git a/lib/database.cc b/lib/database.cc index 8177c6b6..583a16ed 100644 --- a/lib/database.cc +++ b/lib/database.cc @@ -911,8 +911,7 @@ notmuch_database_add_message (notmuch_database_t *notmuch, * (which may or may not reference an existing document in the * database). */ - /* Use NULL for owner since we want to free this locally. */ - message = _notmuch_message_create_for_message_id (NULL, + message = _notmuch_message_create_for_message_id (database, notmuch, message_id, &private_status);