This fixes crash when saving/copying fails.
--HG--
branch : HEAD
struct mdbox_mailbox *mbox = (struct mdbox_mailbox *)_mail->box;
(void)mail_index_refresh(_mail->box->index);
- if (mail_index_is_expunged(_mail->box->view, _mail->seq)) {
+ if (mail_index_is_expunged(_mail->transaction->view, _mail->seq)) {
mail_set_expunged(_mail);
return;
}
if (mail->open_file != NULL) {
/* already open */
} else if (_mail->uid != 0) {
- if (mdbox_mail_lookup(mbox, _mail->box->view,
+ if (mdbox_mail_lookup(mbox, _mail->transaction->view,
_mail->seq, &map_uid) < 0)
return -1;
if (dbox_mail_open_init(mail, map_uid) < 0)
const void *data;
bool expunged;
- mail_index_lookup_ext(mail->box->view, mail->seq,
+ mail_index_lookup_ext(mail->transaction->view, mail->seq,
mbox->ext_id, &data, &expunged);
dbox_rec = data;
if (dbox_rec == NULL || dbox_rec->map_uid == 0) {
memset(&rec, 0, sizeof(rec));
rec.save_date = ioloop_time;
- if (mdbox_mail_lookup(src_mbox, mail->box->view, mail->seq,
+ if (mdbox_mail_lookup(src_mbox, mail->transaction->view, mail->seq,
&rec.map_uid) < 0)
return -1;
mail_index_update_ext(ctx->ctx.trans, ctx->ctx.seq,
ctx->mbox->ext_id, &rec, NULL);
- mail_index_lookup_ext(mail->box->view, mail->seq,
+ mail_index_lookup_ext(mail->transaction->view, mail->seq,
src_mbox->guid_ext_id, &data, &expunged);
if (data != NULL) {
mail_index_update_ext(ctx->ctx.trans, ctx->ctx.seq,
struct sdbox_mailbox *mbox = (struct sdbox_mailbox *)_mail->box;
(void)mail_index_refresh(_mail->box->index);
- if (mail_index_is_expunged(_mail->box->view, _mail->seq)) {
+ if (mail_index_is_expunged(_mail->transaction->view, _mail->seq)) {
mail_set_expunged(_mail);
return;
}