# HG changeset patch # User John Bailey # Date 1227487961 0 # Node ID 1ee0ded8926b176ed90f5119f02f602fc9185f88 # Parent 7e3ccef42bb078df06575b877edb957467f65ecd# Parent 5ad07a31388ec8bd6a8b6a15b4a9cfc52d907fcc merge of '27bbe0ce3ea70a4a4f830cb5f63e86c8ed26baca' and '8157f4ff83aedc353de32b5b1762738f167b6971' diff -r 7e3ccef42bb0 -r 1ee0ded8926b ChangeLog --- 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 diff -r 7e3ccef42bb0 -r 1ee0ded8926b libpurple/plugins/statenotify.c --- 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 diff -r 7e3ccef42bb0 -r 1ee0ded8926b libpurple/protocols/simple/simple.c --- 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); diff -r 7e3ccef42bb0 -r 1ee0ded8926b libpurple/protocols/zephyr/zephyr.c --- 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;