]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
lib-storage: mail_storage_service_io_[de]activate_user() - [de]activate the whole...
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Mon, 11 Dec 2017 23:17:22 +0000 (01:17 +0200)
committerTimo Sirainen <timo.sirainen@dovecot.fi>
Wed, 13 Dec 2017 11:04:26 +0000 (13:04 +0200)
src/lib-storage/mail-storage-service.c

index 0b23d82de5de40ce5bd6d9c097e1ac85608c3f4f..ae4e8283220f540dadeb1aff243da154c2e4c598 100644 (file)
@@ -771,12 +771,24 @@ mail_storage_service_init_post(struct mail_storage_service_ctx *ctx,
 }
 
 void mail_storage_service_io_activate_user(struct mail_storage_service_user *user)
+{
+       io_loop_context_activate(user->ioloop_ctx);
+}
+
+void mail_storage_service_io_deactivate_user(struct mail_storage_service_user *user)
+{
+       io_loop_context_deactivate(user->ioloop_ctx);
+}
+
+static void
+mail_storage_service_io_activate_user_cb(struct mail_storage_service_user *user)
 {
        if (user->log_prefix != NULL)
                i_set_failure_prefix("%s", user->log_prefix);
 }
 
-void mail_storage_service_io_deactivate_user(struct mail_storage_service_user *user)
+static void
+mail_storage_service_io_deactivate_user_cb(struct mail_storage_service_user *user)
 {
        if (user->log_prefix != NULL)
                i_set_failure_prefix("%s", user->service_ctx->default_log_prefix);
@@ -1452,8 +1464,8 @@ mail_storage_service_next_real(struct mail_storage_service_ctx *ctx,
           stats plugin. */
        user->ioloop_ctx = io_loop_context_new(current_ioloop);
        io_loop_context_add_callbacks(user->ioloop_ctx,
-                                     mail_storage_service_io_activate_user,
-                                     mail_storage_service_io_deactivate_user,
+                                     mail_storage_service_io_activate_user_cb,
+                                     mail_storage_service_io_deactivate_user_cb,
                                      user);
 
        if ((user->flags & MAIL_STORAGE_SERVICE_FLAG_NO_LOG_INIT) == 0)
@@ -1571,8 +1583,8 @@ void mail_storage_service_user_unref(struct mail_storage_service_user **_user)
                if (io_loop_get_current_context(current_ioloop) == user->ioloop_ctx)
                        mail_storage_service_io_deactivate_user(user);
                io_loop_context_remove_callbacks(user->ioloop_ctx,
-                       mail_storage_service_io_activate_user,
-                       mail_storage_service_io_deactivate_user, user);
+                       mail_storage_service_io_activate_user_cb,
+                       mail_storage_service_io_deactivate_user_cb, user);
                io_loop_context_unref(&user->ioloop_ctx);
        }
        settings_parser_deinit(&user->set_parser);