# HG changeset patch # User Ethan Blanton # Date 1208031609 0 # Node ID 7a68335d1086c74f624260be39c5eef4688de1ef # Parent bc9845b6f9c09d4dd3bcf38c7f6ce54c8cf7b5ce# Parent 37fc84e642ef00f3a4e3f769e3a9c8d2118ba580 merge of '37d6f8af593bffa17bba1823a3c5a8612bcfdf18' and '6f293106dd16191e1ee2fd0ae94ab626d6753c98' diff -r bc9845b6f9c0 -r 7a68335d1086 ChangeLog --- a/ChangeLog Sat Apr 12 19:40:06 2008 +0000 +++ b/ChangeLog Sat Apr 12 20:20:09 2008 +0000 @@ -9,6 +9,17 @@ * The typing notification in the conversation history can be disabled or customized (font, color etc.) in .gtkrc-2.0. + General: + * The configure script now dies on more absent dependencies. The + --disable-xxx arguments to configure can be used to bypass unneeded + dependencies. This will also cause the configure script to die if an + --enable-xxx option is used and the dependencies it requires are + missing. + * The Evolution integration plugin must now be explicitly enabled. Use + the --enable-gevolution argument to configure to enable it. + * The Contact Availability Prediction plugin must now be explicitly + enabled. Use the --enable-cap argument to configure to enable it. + version 2.4.1 (03/31/2008): http://developer.pidgin.im/query?status=closed&milestone=2.4.1 diff -r bc9845b6f9c0 -r 7a68335d1086 libpurple/status.c --- a/libpurple/status.c Sat Apr 12 19:40:06 2008 +0000 +++ b/libpurple/status.c Sat Apr 12 20:20:09 2008 +0000 @@ -130,14 +130,15 @@ -100, /* away */ -200, /* extended away */ -400, /* mobile */ + 0, /* tune */ -10, /* idle, special case. */ -5, /* idle time, special case. */ 10 /* Offline messageable */ }; -#define SCORE_IDLE 8 -#define SCORE_IDLE_TIME 9 -#define SCORE_OFFLINE_MESSAGE 10 +#define SCORE_IDLE 9 +#define SCORE_IDLE_TIME 10 +#define SCORE_OFFLINE_MESSAGE 11 /************************************************************************** * PurpleStatusPrimitive API diff -r bc9845b6f9c0 -r 7a68335d1086 libpurple/status.h --- a/libpurple/status.h Sat Apr 12 19:40:06 2008 +0000 +++ b/libpurple/status.h Sat Apr 12 20:20:09 2008 +0000 @@ -96,7 +96,8 @@ */ /* * If you add a value to this enum, make sure you update - * the status_primitive_map array in status.c. + * the status_primitive_map array in status.c and the special-cases for idle + * and offline-messagable just below it. */ typedef enum { @@ -110,7 +111,6 @@ PURPLE_STATUS_MOBILE, PURPLE_STATUS_TUNE, PURPLE_STATUS_NUM_PRIMITIVES - } PurpleStatusPrimitive; #include "account.h" diff -r bc9845b6f9c0 -r 7a68335d1086 pidgin/gtkconv.c --- a/pidgin/gtkconv.c Sat Apr 12 19:40:06 2008 +0000 +++ b/pidgin/gtkconv.c Sat Apr 12 20:20:09 2008 +0000 @@ -6538,7 +6538,9 @@ markup = title; } } else if (purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_CHAT) { - const char *topic = gtkconv->u.chat->topic_text ? gtk_entry_get_text(GTK_ENTRY(gtkconv->u.chat->topic_text)) : NULL; + const char *topic = gtkconv->u.chat->topic_text + ? gtk_entry_get_text(GTK_ENTRY(gtkconv->u.chat->topic_text)) + : NULL; char *esc = NULL, *tmp; #if GTK_CHECK_VERSION(2,6,0) esc = topic ? g_markup_escape_text(topic, -1) : NULL; @@ -6548,20 +6550,22 @@ int len = 0; char *c; - tmp = g_strdup(topic); - c = tmp; - while(*c && len < 72) { - c = g_utf8_next_char(c); - len++; + if (topic != NULL) { + tmp = g_strdup(topic); + c = tmp; + while(*c && len < 72) { + c = g_utf8_next_char(c); + len++; + } + if (len == 72) { + *c = '\0'; + c = g_strdup_printf("%s...", tmp); + g_free(tmp); + tmp = c; + } + esc = g_markup_escape_text(tmp, -1); + g_free(tmp); } - if (len == 72) { - *c = '\0'; - c = g_strdup_printf("%s...", tmp); - g_free(tmp); - tmp = c; - } - esc = tmp ? g_markup_escape_text(tmp, -1) : NULL; - g_free(tmp); #endif tmp = g_markup_escape_text(purple_conversation_get_title(conv), -1); markup = g_strdup_printf("%s%s%s",