Blame SOURCES/irssi-1.1.1-CVE-2019-13045.patch

44b2f0
diff --git a/src/irc/core/irc-core.c b/src/irc/core/irc-core.c
44b2f0
index a9221e0..9cffc86 100644
44b2f0
--- a/src/irc/core/irc-core.c
44b2f0
+++ b/src/irc/core/irc-core.c
44b2f0
@@ -75,6 +75,8 @@ static void destroy_server_connect(SERVER_CONNECT_REC *conn)
44b2f0
 
44b2f0
 	g_free_not_null(ircconn->usermode);
44b2f0
 	g_free_not_null(ircconn->alternate_nick);
44b2f0
+	g_free_not_null(ircconn->sasl_username);
44b2f0
+	g_free_not_null(ircconn->sasl_password);
44b2f0
 }
44b2f0
 
44b2f0
 void irc_core_init(void)
44b2f0
diff --git a/src/irc/core/irc-servers-reconnect.c b/src/irc/core/irc-servers-reconnect.c
44b2f0
index ca61492..715ab38 100644
44b2f0
--- a/src/irc/core/irc-servers-reconnect.c
44b2f0
+++ b/src/irc/core/irc-servers-reconnect.c
44b2f0
@@ -49,8 +49,8 @@ static void sig_server_connect_copy(SERVER_CONNECT_REC **dest,
44b2f0
 	rec->usermode = g_strdup(src->usermode);
44b2f0
 	rec->alternate_nick = g_strdup(src->alternate_nick);
44b2f0
 	rec->sasl_mechanism = src->sasl_mechanism;
44b2f0
-	rec->sasl_username = src->sasl_username;
44b2f0
-	rec->sasl_password = src->sasl_password;
44b2f0
+	rec->sasl_username = g_strdup(src->sasl_username);
44b2f0
+	rec->sasl_password = g_strdup(src->sasl_password);
44b2f0
 	*dest = (SERVER_CONNECT_REC *) rec;
44b2f0
 }
44b2f0
 
44b2f0
diff --git a/src/irc/core/irc-servers-setup.c b/src/irc/core/irc-servers-setup.c
44b2f0
index e79557a..5fb5c2b 100644
44b2f0
--- a/src/irc/core/irc-servers-setup.c
44b2f0
+++ b/src/irc/core/irc-servers-setup.c
44b2f0
@@ -101,8 +101,8 @@ static void sig_server_setup_fill_chatnet(IRC_SERVER_CONNECT_REC *conn,
44b2f0
 			if (ircnet->sasl_username != NULL && *ircnet->sasl_username &&
44b2f0
 			    ircnet->sasl_password != NULL && *ircnet->sasl_password) {
44b2f0
 				conn->sasl_mechanism = SASL_MECHANISM_PLAIN;
44b2f0
-				conn->sasl_username = ircnet->sasl_username;
44b2f0
-				conn->sasl_password = ircnet->sasl_password;
44b2f0
+				conn->sasl_username = g_strdup(ircnet->sasl_username);
44b2f0
+				conn->sasl_password = g_strdup(ircnet->sasl_password);
44b2f0
 			} else
44b2f0
 				g_warning("The fields sasl_username and sasl_password are either missing or empty");
44b2f0
 		}