index-sync.c revision 2dec8a2ed04c9e0ac92bcce9aa7270eb98b3d53c
25757faf029c369a8318349dafe952e2358df1d8Timo Sirainen/* Copyright (C) 2002 Timo Sirainen */
a4ac325c2802693c6b761e5a8fda961e5d7490eaTimo Sirainenvoid index_mailbox_set_recent(struct index_mailbox *ibox, uint32_t seq)
25757faf029c369a8318349dafe952e2358df1d8Timo Sirainen unsigned char *p;
25757faf029c369a8318349dafe952e2358df1d8Timo Sirainen ibox->recent_flags = buffer_create_dynamic(default_pool, 128);
25757faf029c369a8318349dafe952e2358df1d8Timo Sirainen } else if (seq < ibox->recent_flags_start_seq) {
25757faf029c369a8318349dafe952e2358df1d8Timo Sirainen dest_idx = ibox->recent_flags_start_seq - seq;
25757faf029c369a8318349dafe952e2358df1d8Timo Sirainen memset(buffer_get_modifyable_data(ibox->recent_flags, NULL),
7d6389e4053c2dac1fb37180b5756b00785983dcTimo Sirainen p = buffer_get_space_unsafe(ibox->recent_flags,
25757faf029c369a8318349dafe952e2358df1d8Timo Sirainen if (*p == 0) {
25757faf029c369a8318349dafe952e2358df1d8Timo Sirainenint index_mailbox_is_recent(struct index_mailbox *ibox, uint32_t seq)
7d6389e4053c2dac1fb37180b5756b00785983dcTimo Sirainen const unsigned char *data;
25757faf029c369a8318349dafe952e2358df1d8Timo Sirainen data = buffer_get_data(ibox->recent_flags, &size);
473080c7c0d25ddfdf77e7dfa0ba8f73c6c669d5Timo Sirainenstatic void index_mailbox_expunge_recent(struct index_mailbox *ibox,
97c339398f1aba6f315b55a9b6ee6b020e33bea4Timo Sirainen const unsigned char *data;
1e21e6be70994b1aa9e52ca0e2f51afefca6d0dfTimo Sirainen /* no recent flags */
move = 0;
for (i = 0; i < count; i++) {
struct mailbox_sync_context *
int failed)
if (failed) {
int ret;
if (ret < 0)
return ret;
#define SYNC_STATUS_FLAGS \
if (ret == 0) {
status_r);
return ret;