From: Stephan Bosch Date: Sat, 29 Sep 2018 18:38:44 +0000 (+0200) Subject: lib-smtp: client: Fix memory issue caused when reconnecting. X-Git-Tag: 2.3.9~1274 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a8b750ef4e88a08c3e685e53f54de012e7e031f2;p=thirdparty%2Fdovecot%2Fcore.git lib-smtp: client: Fix memory issue caused when reconnecting. --- diff --git a/src/lib-smtp/smtp-client-connection.c b/src/lib-smtp/smtp-client-connection.c index 5d07429ccc..3e48e8473a 100644 --- a/src/lib-smtp/smtp-client-connection.c +++ b/src/lib-smtp/smtp-client-connection.c @@ -1734,7 +1734,7 @@ smtp_client_connection_create(struct smtp_client *client, conn->host = p_strdup(conn->pool, host); conn->port = port; conn->ssl_mode = ssl_mode; - conn->conn.name = p_strdup_printf(conn->pool, "%s:%u", host, port); + conn->conn.name = i_strdup_printf("%s:%u", host, port); conn->set = client->set; if (set != NULL) { diff --git a/src/lib/connection.c b/src/lib/connection.c index 8f49323233..95497e2402 100644 --- a/src/lib/connection.c +++ b/src/lib/connection.c @@ -229,7 +229,8 @@ void connection_init(struct connection_list *list, conn->ioloop = current_ioloop; conn->fd_in = -1; conn->fd_out = -1; - conn->name = NULL; + + i_free(conn->name); if (conn->event == NULL) conn->event = event_create(conn->event_parent);