changeset 24454:1ee0ded8926b

merge of '27bbe0ce3ea70a4a4f830cb5f63e86c8ed26baca' and '8157f4ff83aedc353de32b5b1762738f167b6971'
author John Bailey <rekkanoryo@rekkanoryo.org>
date Mon, 24 Nov 2008 00:52:41 +0000
parents 7e3ccef42bb0 (current diff) 5ad07a31388e (diff)
children e344426d7c28 f3103f786c86 ee5f4c2a177a
files ChangeLog
diffstat 4 files changed, 20 insertions(+), 2 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Mon Nov 24 00:32:29 2008 +0000
+++ b/ChangeLog	Mon Nov 24 00:52:41 2008 +0000
@@ -8,6 +8,13 @@
 	  --with-system-ssl-certs and GnuTLS need to include these in the
 	  system certs directory.
 	* Corrected maximum message lengths for Yahoo!
+	* Fix some problems with Gadu-Gadu buddy icons (Adam Strzelecki)
+	* Enable auto-reply on Zephyr, to emulate 'zaway' (Toby Schaffer)
+	* The Buddy State Notification plugin no longer prints duplicate
+	  notifications when the same buddy is in multiple groups (Florian Quèze)
+	* The Buddy State Notification plugin no longer turns JID's, MSN Passport
+	  ID's, etc. into links (Florian Quèze)
+	* Fix a crash in SIMPLE when a malformed message is received.
 
 	Pidgin:
 	* On GTK+ 2.14 and higher, we're using the gtk-tooltip-delay setting
--- a/libpurple/plugins/statenotify.c	Mon Nov 24 00:32:29 2008 +0000
+++ b/libpurple/plugins/statenotify.c	Mon Nov 24 00:52:41 2008 +0000
@@ -32,13 +32,17 @@
 		return;
 	g_return_if_fail(conv->type == PURPLE_CONV_TYPE_IM);
 
+	/* Prevent duplicate notifications for buddies in multiple groups */
+	if (buddy != purple_find_buddy(buddy->account, buddy->name))
+		return;
+
 	who = purple_buddy_get_alias(buddy);
 	escaped = g_markup_escape_text(who, -1);
 
 	g_snprintf(buf, sizeof(buf), message, escaped);
 	g_free(escaped);
 
-	purple_conv_im_write(conv->u.im, NULL, buf, PURPLE_MESSAGE_SYSTEM | PURPLE_MESSAGE_ACTIVE_ONLY, time(NULL));
+	purple_conv_im_write(conv->u.im, NULL, buf, PURPLE_MESSAGE_SYSTEM | PURPLE_MESSAGE_ACTIVE_ONLY | PURPLE_MESSAGE_NO_LINKIFY, time(NULL));
 }
 
 static void
--- a/libpurple/protocols/simple/simple.c	Mon Nov 24 00:32:29 2008 +0000
+++ b/libpurple/protocols/simple/simple.c	Mon Nov 24 00:52:41 2008 +0000
@@ -1630,6 +1630,13 @@
 		cur[0] = '\0';
 		purple_debug_info("simple", "\n\nreceived - %s\n######\n%s\n#######\n\n", ctime(&currtime), conn->inbuf);
 		msg = sipmsg_parse_header(conn->inbuf);
+
+		if(!msg) {
+			/* Should we re-use this error message (from lower in the function)? */
+			purple_debug_misc("simple", "received a incomplete sip msg: %s\n", conn->inbuf);
+			return;
+		}
+
 		cur[0] = '\r';
 		cur += 2;
 		restlen = conn->inbufused - (cur - conn->inbuf);
--- a/libpurple/protocols/zephyr/zephyr.c	Mon Nov 24 00:32:29 2008 +0000
+++ b/libpurple/protocols/zephyr/zephyr.c	Mon Nov 24 00:52:41 2008 +0000
@@ -1571,7 +1571,7 @@
 #ifdef WIN32
 	username = purple_account_get_username(account);
 #endif
-	gc->flags |= PURPLE_CONNECTION_HTML | PURPLE_CONNECTION_NO_BGCOLOR | PURPLE_CONNECTION_NO_URLDESC;
+	gc->flags |= PURPLE_CONNECTION_AUTO_RESP | PURPLE_CONNECTION_HTML | PURPLE_CONNECTION_NO_BGCOLOR | PURPLE_CONNECTION_NO_URLDESC;
 	gc->proto_data = zephyr=g_new0(zephyr_account,1); 
 
 	zephyr->account = account;