pidgin: 8696a9de: Fix an invalid memory deref with Windows...

darkrain42 at pidgin.im darkrain42 at pidgin.im
Wed Apr 21 23:11:36 EDT 2010


-----------------------------------------------------------------
Revision: 8696a9de2c8fa80466be9aba202ed7e8273490cb
Ancestor: 9aace88a3b513de8c7b7189fef9bf112258412b5
Author: mklencke at gmx.net
Date: 2010-04-22T03:09:15
Branch: im.pidgin.pidgin
URL: http://d.pidgin.im/viewmtn/revision/info/8696a9de2c8fa80466be9aba202ed7e8273490cb

Modified files:
        COPYRIGHT ChangeLog libpurple/proxy.c

ChangeLog: 

Fix an invalid memory deref with Windows proxy settings when there's no ":port"

Patch from Marten Klencke.  Closes #11701.

-------------- next part --------------
============================================================
--- COPYRIGHT	aea1175cd30cad38bd50a9cced562c0c6ba3e466
+++ COPYRIGHT	1958092dbadfc1b730cb92b3cf04d3e139c62997
@@ -245,6 +245,7 @@ Gordian Klein
 Jochen Kemnade
 Yann Kerherve
 Gordian Klein
+Marten Klencke
 Krzysztof Klinikowski
 Akuke Kok
 Kir Kolyshkin
============================================================
--- ChangeLog	4e82f97a5d99efe77e71894ddd98dee02190af6c
+++ ChangeLog	2215ea6650b56dc84a3d08dba5d3556a9b8b88bc
@@ -18,6 +18,8 @@ version 2.7.0 (??/??/????):
 	  GnuTLS manual for documentation on the format of the priority
 	  strings.
 	* Fix autoconf detection of Python.  (Brad Smith)
+	* Fix a crash when a Windows proxy (in IE) does not have a port.
+	  (Marten Klencke)
 
 	Pidgin:
 	* Moved the "Debugging Information" section of the About box to a
============================================================
--- libpurple/proxy.c	34ecb9b890ad66f18ad2dfdfc6690bb96526d6cc
+++ libpurple/proxy.c	daf96c2871ea2f5450a5ddec2432b2685415779d
@@ -379,12 +379,17 @@ _proxy_fill_hostinfo(PurpleProxyInfo *in
 	char *d;
 
 	d = g_strrstr(host, ":");
-	if (d)
+	if (d) {
 		*d = '\0';
-	d++;
-	if (*d)
-		sscanf(d, "%d", &port);
 
+		d++;
+		if (*d)
+			sscanf(d, "%d", &port);
+
+		if (port == 0)
+			port = default_port;
+	}
+
 	purple_proxy_info_set_host(info, host);
 	purple_proxy_info_set_port(info, port);
 }


More information about the Commits mailing list