This is scenario that cause segmentation fault in my Dovecot. Maybe I do something wrong, but I don't know what...
We run: mailbox_delete mailbox_delete do: mailbox_open(box) < 0 and after we have: box->v.delete(box) which run index_storage_mailbox_delete
index_storage_mailbox_delete do: mailbox_close(box); and now mailbox is closed (this close box->view and mailbox open)
Try to delete folder, but can't do this... example becaus it is system folder, or NFS failure... set error message and return -1.
Now we are returning to mailbox_delete.
And we have: if (ret < 0 && box->marked_deleted) and this is true mailbox_mark_index_deleted(box, FALSE) if (box->marked_deleted && del) this is false mail_index_transaction_begin(box->view, trans_flags); mail_index_view_ref(view) and segmentation fault, because view is 0x0
#0 mail_index_view_transaction_ref (view=0x0) at mail-index-view.c:81
#1 0xb7ef3214 in mail_index_transaction_begin (view=0x0,
flags=MAIL_INDEX_TRANSACTION_FLAG_EXTERNAL)
at mail-index-transaction.c:268
#2 0xb7eb7a73 in mailbox_mark_index_deleted (box=0x80c8268, del=false)
at mail-storage.c:682
#3 0xb7eb80a9 in mailbox_delete (box=0x80c8268) at mail-storage.c:757
#4 0x0805001f in cmd_delete (cmd=0x8095978) at cmd-delete.c:46
#5 0x0805625c in client_command_input (cmd=0x8095978) at imap-client.c:741
#6 0x0805630b in client_command_input (cmd=0x8095978) at imap-client.c:791
#7 0x0805646d in client_handle_input (client=0x8095390) at
imap-client.c:857
#8 0x08056f1f in client_input (client=0x8095390) at imap-client.c:908
#9 0xb7e6f110 in io_loop_handler_run (ioloop=0x806c370) at
ioloop-epoll.c:212
#10 0xb7e6da98 in io_loop_run (ioloop=0x806c370) at ioloop.c:350
#11 0xb7e5b26a in master_service_run (service=0x806c2c0,
callback=0x805f800
This is Dovecot error or I do something wrong?
-- Len7hir