dovecot-2.1: imapc: Code cleanup: avoid unnecessarily accessing ...
dovecot at dovecot.org
dovecot at dovecot.org
Fri Oct 7 21:07:34 EEST 2011
details: http://hg.dovecot.org/dovecot-2.1/rev/cd4a65125c84
changeset: 13616:cd4a65125c84
user: Timo Sirainen <tss at iki.fi>
date: Fri Oct 07 20:49:32 2011 +0300
description:
imapc: Code cleanup: avoid unnecessarily accessing imapc-client-private.h
diffstat:
src/lib-storage/index/imapc/imapc-mailbox.c | 4 ++++
src/lib-storage/index/imapc/imapc-storage.c | 18 ++----------------
src/lib-storage/index/imapc/imapc-storage.h | 1 +
3 files changed, 7 insertions(+), 16 deletions(-)
diffs (73 lines):
diff -r 4f305d785bc7 -r cd4a65125c84 src/lib-storage/index/imapc/imapc-mailbox.c
--- a/src/lib-storage/index/imapc/imapc-mailbox.c Fri Oct 07 20:34:53 2011 +0300
+++ b/src/lib-storage/index/imapc/imapc-mailbox.c Fri Oct 07 20:49:32 2011 +0300
@@ -135,11 +135,15 @@
static void imapc_mailbox_idle_notify(struct imapc_mailbox *mbox)
{
+ struct ioloop *old_ioloop = current_ioloop;
+
if (mbox->box.notify_callback != NULL &&
mbox->to_idle_delay == NULL) {
+ io_loop_set_current(mbox->storage->root_ioloop);
mbox->to_idle_delay =
timeout_add(NOTIFY_DELAY_MSECS,
imapc_mailbox_idle_timeout, mbox);
+ io_loop_set_current(old_ioloop);
}
}
diff -r 4f305d785bc7 -r cd4a65125c84 src/lib-storage/index/imapc/imapc-storage.c
--- a/src/lib-storage/index/imapc/imapc-storage.c Fri Oct 07 20:34:53 2011 +0300
+++ b/src/lib-storage/index/imapc/imapc-storage.c Fri Oct 07 20:49:32 2011 +0300
@@ -7,7 +7,7 @@
#include "imap-resp-code.h"
#include "mailbox-tree.h"
#include "imapc-mail.h"
-#include "imapc-client-private.h"
+#include "imapc-client.h"
#include "imapc-connection.h"
#include "imapc-list.h"
#include "imapc-sync.h"
@@ -78,6 +78,7 @@
storage = p_new(pool, struct imapc_storage, 1);
storage->storage = imapc_storage;
storage->storage.pool = pool;
+ storage->root_ioloop = current_ioloop;
return &storage->storage;
}
@@ -112,22 +113,7 @@
void imapc_storage_run(struct imapc_storage *storage)
{
- struct imapc_client_mailbox *client_box;
- struct imapc_client_connection *const *connp;
- struct imapc_mailbox *mbox;
-
imapc_client_run_pre(storage->client);
-
- array_foreach(&storage->client->conns, connp) {
- client_box = imapc_connection_get_mailbox((*connp)->conn);
- if (client_box == NULL)
- continue;
-
- mbox = client_box->untagged_box_context;
- if (mbox->to_idle_delay != NULL)
- mbox->to_idle_delay = io_loop_move_timeout(&mbox->to_idle_delay);
- }
-
imapc_client_run_post(storage->client);
}
diff -r 4f305d785bc7 -r cd4a65125c84 src/lib-storage/index/imapc/imapc-storage.h
--- a/src/lib-storage/index/imapc/imapc-storage.h Fri Oct 07 20:34:53 2011 +0300
+++ b/src/lib-storage/index/imapc/imapc-storage.h Fri Oct 07 20:49:32 2011 +0300
@@ -31,6 +31,7 @@
struct mail_storage storage;
const struct imapc_settings *set;
+ struct ioloop *root_ioloop;
struct imapc_mailbox_list *list;
struct imapc_client *client;
More information about the dovecot-cvs
mailing list