]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: Don't crash in mailbox_transaction_commit() if plugin aborts transaction.
authorTimo Sirainen <tss@iki.fi>
Mon, 26 Jul 2010 18:10:21 +0000 (19:10 +0100)
committerTimo Sirainen <tss@iki.fi>
Mon, 26 Jul 2010 18:10:21 +0000 (19:10 +0100)
src/lib-storage/mail-storage.c

index d054b91f2b2ebc8adda38a180aae32a77c8a8e8f..9e810c350e4bd46559476587f5c49068cce5baf4 100644 (file)
@@ -1175,8 +1175,10 @@ int mailbox_transaction_commit(struct mailbox_transaction_context **t)
 
        /* Store changes temporarily so that plugins overriding
           transaction_commit() can look at them. */
+       changes.pool = NULL;
        ret = mailbox_transaction_commit_get_changes(t, &changes);
-       pool_unref(&changes.pool);
+       if (changes.pool != NULL)
+               pool_unref(&changes.pool);
        return ret;
 }