struct cydir_mailbox *mbox = (struct cydir_mailbox *)t->ictx.ibox;
struct cydir_save_context *ctx = t->save_ctx;
- i_assert((t->ictx.flags & MAILBOX_TRANSACTION_FLAG_EXTERNAL) != 0);
+ i_assert((_t->flags & MAILBOX_TRANSACTION_FLAG_EXTERNAL) != 0);
if (t->save_ctx != NULL)
return &t->save_ctx->ctx;
struct dbox_mailbox *mbox = (struct dbox_mailbox *)t->ictx.ibox;
struct dbox_save_context *ctx;
- i_assert((t->ictx.flags & MAILBOX_TRANSACTION_FLAG_EXTERNAL) != 0);
+ i_assert((_t->flags & MAILBOX_TRANSACTION_FLAG_EXTERNAL) != 0);
if (t->save_ctx != NULL) {
/* use the existing allocated structure */
struct mail_index_transaction_vfuncs super;
struct index_mailbox *ibox;
- enum mailbox_transaction_flags flags;
int mail_ref_count;
struct mail_index_transaction *trans;
i_panic("mail storage transaction context mising for type %s",
box->storage->name);
}
- it->flags = flags;
return &it->mailbox_ctx;
}
int maildir_copy(struct mail_save_context *ctx, struct mail *mail)
{
+ struct mailbox_transaction_context *_t = ctx->transaction;
struct maildir_transaction_context *t =
- (struct maildir_transaction_context *)ctx->transaction;
+ (struct maildir_transaction_context *)_t;
struct maildir_mailbox *mbox = (struct maildir_mailbox *)t->ictx.ibox;
int ret;
- i_assert((t->ictx.flags & MAILBOX_TRANSACTION_FLAG_EXTERNAL) != 0);
+ i_assert((_t->flags & MAILBOX_TRANSACTION_FLAG_EXTERNAL) != 0);
if (mbox->storage->set->maildir_copy_with_hardlinks &&
maildir_compatible_file_modes(&mbox->ibox.box, mail->box)) {
struct maildir_transaction_context *t =
(struct maildir_transaction_context *)_t;
- i_assert((t->ictx.flags & MAILBOX_TRANSACTION_FLAG_EXTERNAL) != 0);
+ i_assert((_t->flags & MAILBOX_TRANSACTION_FLAG_EXTERNAL) != 0);
if (t->save_ctx == NULL)
t->save_ctx = maildir_save_transaction_init(t);
int maildir_transaction_save_commit_pre(struct maildir_save_context *ctx)
{
- struct maildir_transaction_context *t =
- (struct maildir_transaction_context *)ctx->ctx.transaction;
+ struct mailbox_transaction_context *_t = ctx->ctx.transaction;
struct maildir_filename *last_mf;
enum maildir_uidlist_sync_flags sync_flags;
int ret;
sync_flags = MAILDIR_UIDLIST_SYNC_PARTIAL |
MAILDIR_UIDLIST_SYNC_NOREFRESH;
- if ((t->ictx.flags & MAILBOX_TRANSACTION_FLAG_ASSIGN_UIDS) != 0) {
+ if ((_t->flags & MAILBOX_TRANSACTION_FLAG_ASSIGN_UIDS) != 0) {
/* we want to assign UIDs, we must lock uidlist */
} else if (ctx->have_keywords) {
/* keywords file updating relies on uidlist lock. */
ret = -1;
}
- t->ictx.mailbox_ctx.changes->uid_validity =
+ _t->changes->uid_validity =
maildir_uidlist_get_uid_validity(ctx->mbox->uidlist);
if (ctx->mail != NULL) {
mbox_save_init_file(struct mbox_save_context *ctx,
struct mbox_transaction_context *t, bool want_mail)
{
+ struct mailbox_transaction_context *_t = &t->ictx.mailbox_ctx;
struct mbox_mailbox *mbox = ctx->mbox;
struct mail_storage *storage = &mbox->storage->storage;
bool empty = FALSE;
return -1;
}
- if ((t->ictx.flags & MAILBOX_TRANSACTION_FLAG_ASSIGN_UIDS) != 0)
+ if ((_t->flags & MAILBOX_TRANSACTION_FLAG_ASSIGN_UIDS) != 0)
want_mail = TRUE;
if (ctx->append_offset == (uoff_t)-1) {
struct mbox_mailbox *mbox = (struct mbox_mailbox *)t->ictx.ibox;
struct mbox_save_context *ctx;
- i_assert((t->ictx.flags & MAILBOX_TRANSACTION_FLAG_EXTERNAL) != 0);
+ i_assert((_t->flags & MAILBOX_TRANSACTION_FLAG_EXTERNAL) != 0);
if (t->save_ctx != NULL)
return &t->save_ctx->ctx;