]> git.ipfire.org Git - thirdparty/dovecot/core.git/commitdiff
doveadm: Simplify destroying ioloop using o_stream_switch_ioloop_to()
authorTimo Sirainen <timo.sirainen@dovecot.fi>
Tue, 5 Jun 2018 17:28:45 +0000 (20:28 +0300)
committerVille Savolainen <ville.savolainen@dovecot.fi>
Fri, 8 Jun 2018 07:19:00 +0000 (10:19 +0300)
src/doveadm/client-connection-http.c
src/doveadm/client-connection-tcp.c

index 304683791b45fcf0a68bc5af95f52dd58c54dbbd..bb92b9385db9e698369c7b8c8330d796548934c6 100644 (file)
@@ -226,9 +226,7 @@ doveadm_http_server_command_execute(struct client_request_http *req)
        cctx.cmd->cmd(&cctx);
        client_connection_set_proctitle(&conn->conn, "");
 
-       io_loop_set_current(prev_ioloop);
-       o_stream_switch_ioloop(req->output);
-       io_loop_set_current(ioloop);
+       o_stream_switch_ioloop_to(req->output, prev_ioloop);
        io_loop_destroy(&ioloop);
 
        if ((cctx.cmd->flags & CMD_FLAG_NO_PRINT) == 0)
index cd1c74476dc9d8e6fcb18f177962fdfdbf39f6a0..0f84525abe4cf060e818ab7d2abdba5586f8c2d9 100644 (file)
@@ -345,11 +345,9 @@ static int doveadm_cmd_handle(struct client_connection_tcp *conn,
        else
                doveadm_mail_cmd_server_run(conn, mctx);
 
-       io_loop_set_current(prev_ioloop);
-       o_stream_switch_ioloop(conn->output);
+       o_stream_switch_ioloop_to(conn->output, prev_ioloop);
        if (conn->log_out != NULL)
-               o_stream_switch_ioloop(conn->log_out);
-       io_loop_set_current(conn->ioloop);
+               o_stream_switch_ioloop_to(conn->log_out, prev_ioloop);
        io_loop_destroy(&conn->ioloop);
 
        /* clear all headers */