void mailmbox_done(struct mailmbox_folder * folder) { if (!folder->mb_read_only) mailmbox_expunge(folder); mailmbox_unmap(folder); mailmbox_close(folder); mailmbox_folder_free(folder); }
static int mboxdriver_expunge_folder(mailsession * session) { int r; struct mbox_session_state_data * mbox_data; mbox_data = get_data(session); if (mbox_data->mbox_folder == NULL) return MAIL_ERROR_BAD_STATE; r = mailmbox_expunge(mbox_data->mbox_folder); if (r != MAILMBOX_NO_ERROR) return mboxdriver_mbox_error_to_mail_error(r); return MAIL_NO_ERROR; }