index-transaction.c revision e05a4c4136fec723f019bee8383103080203f127
0cb2e8eb55e70f8ebe1e8349bdf49e4cbe5d8834Timo Sirainen/* Copyright (C) 2003 Timo Sirainen */
24fc71a693331ffe77e2b6d81c70aca6fa055e47Timo Sirainenvoid index_transaction_init(struct index_transaction_context *t,
e05a4c4136fec723f019bee8383103080203f127Timo Sirainen array_create(&t->mailbox_ctx.module_contexts, default_pool,
e05a4c4136fec723f019bee8383103080203f127Timo Sirainen sizeof(void *), 5);
fdc557286bc9f92c5f3bb49096ff6e2bcec0ea79Timo Sirainen t->trans = mail_index_transaction_begin(ibox->view,
fdc557286bc9f92c5f3bb49096ff6e2bcec0ea79Timo Sirainen (flags & MAILBOX_TRANSACTION_FLAG_EXTERNAL) != 0);
09c3a491f4f6ccebe290c7709bdc0d79a187610bTimo Sirainen t->trans_view = mail_index_transaction_open_updated_view(t->trans);
24fc71a693331ffe77e2b6d81c70aca6fa055e47Timo Sirainen t->cache_view = mail_cache_view_open(ibox->cache, t->trans_view);
1efb8b95e87ca3940cc74f9553a3c8ca5d85ead3Timo Sirainen t->cache_trans = mail_cache_get_transaction(t->cache_view, t->trans);
0cb2e8eb55e70f8ebe1e8349bdf49e4cbe5d8834Timo Sirainenstatic void index_transaction_free(struct index_transaction_context *t)
0cb2e8eb55e70f8ebe1e8349bdf49e4cbe5d8834Timo Sirainenint index_transaction_commit(struct mailbox_transaction_context *_t)
0cb2e8eb55e70f8ebe1e8349bdf49e4cbe5d8834Timo Sirainen ret = mail_index_transaction_commit(t->trans, &seq, &offset);