]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
virtual: Crashfix: Don't deinitialize search args that haven't been initialized.
authorTimo Sirainen <tss@iki.fi>
Mon, 26 May 2014 01:26:01 +0000 (04:26 +0300)
committerTimo Sirainen <tss@iki.fi>
Mon, 26 May 2014 01:26:01 +0000 (04:26 +0300)
src/plugins/virtual/virtual-storage.c

index 41e14c005b6a7aa92a61b8ad875749cdbe1cf816..cb836dbf88c1271a153863398a9684209d488400 100644 (file)
@@ -249,8 +249,11 @@ static void virtual_mailbox_close_internal(struct virtual_mailbox *mbox)
                if (bboxes[i]->box == NULL)
                        continue;
 
-               if (bboxes[i]->search_args != NULL)
+               if (bboxes[i]->search_args != NULL &&
+                   bboxes[i]->search_args_initialized) {
                        mail_search_args_deinit(bboxes[i]->search_args);
+                       bboxes[i]->search_args_initialized = FALSE;
+               }
                mailbox_free(&bboxes[i]->box);
                if (array_is_created(&bboxes[i]->sync_outside_expunges))
                        array_free(&bboxes[i]->sync_outside_expunges);