changeset 26692:332d967670e0

propagate from branch 'im.pidgin.pidgin' (head 58fbcc161c5eadf3f307cd460a6ce0a209d908df) to branch 'org.darkrain42.pidgin.disco' (head 0a29ca89a8dbe84c8b4d4631185db447391c375f)
author Paul Aurich <paul@darkrain42.org>
date Wed, 15 Apr 2009 23:32:18 +0000
parents ba99ee519926 (current diff) 3712d32363dd (diff)
children 472b0f3c36c3
files libpurple/protocols/jabber/jabber.c
diffstat 3 files changed, 6 insertions(+), 9 deletions(-) [+]
line wrap: on
line diff
--- a/libpurple/protocols/jabber/jabber.c	Wed Apr 15 06:57:48 2009 +0000
+++ b/libpurple/protocols/jabber/jabber.c	Wed Apr 15 23:32:18 2009 +0000
@@ -463,7 +463,7 @@
 	JabberStream *js = gc->proto_data;
 
 	if (js->keepalive_timeout == -1) {
-		jabber_ping_jid(js, NULL);
+		jabber_ping_jid(js, js->user->domain);
 		js->keepalive_timeout = purple_timeout_add_seconds(120,
 				(GSourceFunc)(jabber_keepalive_timeout), gc);
 	}
--- a/libpurple/protocols/jabber/ping.c	Wed Apr 15 06:57:48 2009 +0000
+++ b/libpurple/protocols/jabber/ping.c	Wed Apr 15 23:32:18 2009 +0000
@@ -55,15 +55,10 @@
                                   JabberIqType type, const char *id,
                                   xmlnode *packet, gpointer data)
 {
-	char *own_bare_jid = g_strdup_printf("%s@%s", js->user->node,
-	                                     js->user->domain);
-
-	if (!from || !strcmp(from, own_bare_jid)) {
-		/* If the pong is from our bare JID, treat it as a return from the
+	if (purple_strequal(from, js->user->domain))
+		/* If the pong is from the server, assume it's a result of the
 		 * keepalive functions */
 		jabber_keepalive_pong_cb(js);
-	}
-	g_free(own_bare_jid);
 
 	if (type == JABBER_IQ_RESULT) {
 		purple_debug_info("jabber", "PONG!\n");
--- a/libpurple/protocols/yahoo/yahoo.c	Wed Apr 15 06:57:48 2009 +0000
+++ b/libpurple/protocols/yahoo/yahoo.c	Wed Apr 15 23:32:18 2009 +0000
@@ -2973,8 +2973,10 @@
 
 		/* connect to host */
 		if((purple_proxy_connect(NULL, account, host_ip, YAHOO_PAGER_PORT_P2P, yahoo_p2p_init_cb, p2p_data))==NULL)	{
-			yahoo_p2p_disconnect_destroy_data(p2p_data);
 			purple_debug_info("yahoo","p2p: Connection to %s failed\n", host_ip);
+			g_free(p2p_data->host_ip);
+			g_free(p2p_data->host_username);
+			g_free(p2p_data);
 		}
 	}
 }