From: Stephan Bosch Date: Tue, 19 Jun 2018 22:31:43 +0000 (+0200) Subject: lib-smtp: server: Restructure reference counting of BDAT/BURL chain stream. X-Git-Tag: 2.3.9~1673 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=4982948d35747ec6a4e8a3ef51226b98aa28830c;p=thirdparty%2Fdovecot%2Fcore.git lib-smtp: server: Restructure reference counting of BDAT/BURL chain stream. It is now dereferenced directly, rather than via a local variable; thereby making sure it is reset to NULL. --- diff --git a/src/lib-smtp/smtp-server-cmd-data.c b/src/lib-smtp/smtp-server-cmd-data.c index f2ed0609d1..7775310f55 100644 --- a/src/lib-smtp/smtp-server-cmd-data.c +++ b/src/lib-smtp/smtp-server-cmd-data.c @@ -523,7 +523,6 @@ int smtp_server_connection_data_chunk_add(struct smtp_server_cmd_ctx *cmd, struct smtp_server_command *command = cmd->cmd; struct cmd_data_context *data_cmd = (struct cmd_data_context *)command->data; - struct istream *input; uoff_t new_size; i_assert(data_cmd != NULL); @@ -549,9 +548,8 @@ int smtp_server_connection_data_chunk_add(struct smtp_server_cmd_ctx *cmd, data_cmd->client_input = client_input; i_stream_ref(chunk); - input = (data_cmd->chunk_first ? conn->state.data_chain_input : NULL); - cmd_data_start_input(cmd, input); - i_stream_unref(&input); + cmd_data_start_input(cmd, conn->state.data_chain_input); + i_stream_unref(&conn->state.data_chain_input); return 0; }