Mercurial > dovecot > original-hg > dovecot-1.2
changeset 3246:3957eece913f HEAD
Don't crash when closing streamed mbox.
author | Timo Sirainen <tss@iki.fi> |
---|---|
date | Tue, 29 Mar 2005 18:06:39 +0300 |
parents | 6491dab63e54 |
children | e7166e2f8b9b |
files | src/lib-storage/index/mbox/mbox-storage.c |
diffstat | 1 files changed, 9 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
--- a/src/lib-storage/index/mbox/mbox-storage.c Tue Mar 29 16:33:07 2005 +0300 +++ b/src/lib-storage/index/mbox/mbox-storage.c Tue Mar 29 18:06:39 2005 +0300 @@ -940,6 +940,7 @@ { struct index_mailbox *ibox = (struct index_mailbox *)box; const struct mail_index_header *hdr; + struct mail_index *free_index = NULL; int ret = 0; hdr = mail_index_get_header(ibox->view); @@ -954,9 +955,16 @@ mbox_file_close(ibox); if (ibox->mbox_file_stream != NULL) { i_stream_unref(ibox->mbox_file_stream); - ibox->mbox_file_stream = NULL; + ibox->mbox_file_stream = NULL; + + /* it's not in storage's index cache, so free it manually */ + free_index = ibox->index; + ibox->index = NULL; } + index_storage_mailbox_free(box); + if (free_index != NULL) + mail_index_free(free_index); return ret; }