# HG changeset patch # User Daniel Atallah # Date 1274029945 0 # Node ID 9945fe7098f7e53b5bd7f6b4cf5f9ed74981eaa4 # Parent 23406bea038f6c4355e52273a7a57512cd0427d4# Parent b3377040edc1fa6b33bf3fdc4f2aef889fc46c1e merge of '8ff2ee29eabe00715f5da3d756f3bf52b9509879' and 'cfa223b3386ae5aea84acf03fb9eb9b741364d29' diff -r 23406bea038f -r 9945fe7098f7 ChangeLog --- a/ChangeLog Sun May 16 17:08:02 2010 +0000 +++ b/ChangeLog Sun May 16 17:12:25 2010 +0000 @@ -1,6 +1,12 @@ Pidgin and Finch: The Pimpin' Penguin IM Clients That're Good for the Soul version 2.7.1 (??/??/????): + General: + * Build fixes on OpenSolaris. (Brian Lu) + + Pidgin: + * Restore the tray icon's blinking functionality. + Bonjour: * Fix a crash on disconnect. diff -r 23406bea038f -r 9945fe7098f7 configure.ac --- a/configure.ac Sun May 16 17:08:02 2010 +0000 +++ b/configure.ac Sun May 16 17:12:25 2010 +0000 @@ -115,6 +115,9 @@ PKG_PROG_PKG_CONFIG AC_FUNC_ALLOCA +dnl Check for Sun compiler +AC_CHECK_DECL([__SUNPRO_C], [SUNCC="yes"], [SUNCC="no"]) + dnl Checks for header files. AC_HEADER_STDC AC_HEADER_SYS_WAIT @@ -1337,6 +1340,10 @@ DEBUG_CFLAGS="-Wall $DEBUG_CFLAGS" CFLAGS="-g $CFLAGS" fi + +if test "x$SUNCC" = "xyes"; then + CFLAGS="-features=extensions" +fi AC_SUBST(CFLAGS) AC_PATH_PROG(pidginpath, pidgin) diff -r 23406bea038f -r 9945fe7098f7 libpurple/protocols/gg/lib/libgadu.h --- a/libpurple/protocols/gg/lib/libgadu.h Sun May 16 17:08:02 2010 +0000 +++ b/libpurple/protocols/gg/lib/libgadu.h Sun May 16 17:12:25 2010 +0000 @@ -117,7 +117,7 @@ typedef unsigned short uint16_t; typedef unsigned int uint32_t; -#ifndef __CYGWIN__ +#if !defined(__CYGWIN__) && !defined(__SunOS) #define __int8_t_defined typedef signed char int8_t; typedef signed short int16_t; diff -r 23406bea038f -r 9945fe7098f7 libpurple/protocols/oscar/snac.c --- a/libpurple/protocols/oscar/snac.c Sun May 16 17:08:02 2010 +0000 +++ b/libpurple/protocols/oscar/snac.c Sun May 16 17:12:25 2010 +0000 @@ -56,11 +56,9 @@ snac.type = type; snac.flags = flags; - if (datalen) { - if (!(snac.data = g_malloc(datalen))) - return 0; /* er... */ - memcpy(snac.data, data, datalen); - } else + if (datalen) + snac.data = g_memdup(data, datalen); + else snac.data = NULL; return aim_newsnac(od, &snac); @@ -78,9 +76,7 @@ if (!newsnac) return 0; - if (!(snac = g_malloc(sizeof(aim_snac_t)))) - return 0; - memcpy(snac, newsnac, sizeof(aim_snac_t)); + snac = g_memdup(newsnac, sizeof(aim_snac_t)); snac->issuetime = time(NULL); index = snac->id % FAIM_SNAC_HASH_SIZE; diff -r 23406bea038f -r 9945fe7098f7 pidgin/gtkdocklet-gtk.c --- a/pidgin/gtkdocklet-gtk.c Sun May 16 17:08:02 2010 +0000 +++ b/pidgin/gtkdocklet-gtk.c Sun May 16 17:12:25 2010 +0000 @@ -75,6 +75,12 @@ if (icon_name) { gtk_status_icon_set_from_icon_name(docklet, icon_name); } + + if (purple_prefs_get_bool(PIDGIN_PREFS_ROOT "/docklet/blink")) { + gtk_status_icon_set_blinking(docklet, (pending && !connecting)); + } else if (gtk_status_icon_get_blinking(docklet)) { + gtk_status_icon_set_blinking(docklet, FALSE); + } } static void