# HG changeset patch # User Marcus Lundblad # Date 1222544380 0 # Node ID cd4a5275ba062b84f3863c91d8eaed2ec2bc3e0b # Parent be762644486f2adfe378c7f80f30c0ad2177626c# Parent e414fb3c8c70e7007de94b07862460d4c165eedd merge of '421269ebbe32a67020772ec7ba39a1e5f8b14b4c' and 'e93b917159d299a748daabcb28522fd911304d55' diff -r be762644486f -r cd4a5275ba06 COPYRIGHT --- a/COPYRIGHT Sat Sep 27 19:39:17 2008 +0000 +++ b/COPYRIGHT Sat Sep 27 19:39:40 2008 +0000 @@ -425,6 +425,7 @@ Gal Topper Chris Toshok Ken Tossell +Marcus Trautwig Tom Tromey Todd Troxell Brad Turcotte diff -r be762644486f -r cd4a5275ba06 ChangeLog --- a/ChangeLog Sat Sep 27 19:39:17 2008 +0000 +++ b/ChangeLog Sat Sep 27 19:39:40 2008 +0000 @@ -5,6 +5,8 @@ * Restored the "Has You" feature to the MSN protocol tooltips. * Fixed a crash on removing a custom buddy icon on a buddy. * Fixed a crash caused by certain self-signed SSL certificates. + * Enable a number of strong ciphers which were previously disabled + when using NSS. (Thanks to Marcus Trautwig.) Pidgin: * The status selector now saves your message when changing status. @@ -13,6 +15,8 @@ help with discoverability. CTRL+S is no longer bound to mute. * Added ability to change the color of visited links (using the theme control plugin, or setting the color in ~/.gtkrc-2.0) + * Fix a crash occuring when a custom smiley is deleted and re-added and + used in an open conversation after being re-added Finch: * A new 'Nested Grouping' option in the 'Grouping' plugin. Group @@ -24,6 +28,10 @@ * Sending and receiving custom smileys using the specification in XEP-0231 (bits of binary) and XHTML-IM + Yahoo: + * Only send a Ping once every hour. This prevents the account from + being disconnected from the server periodically. + version 2.5.1 (08/30/2008): libpurple: * In the Join/Part plugin, add the ability to apply the rules to diff -r be762644486f -r cd4a5275ba06 libpurple/dnsquery.c --- a/libpurple/dnsquery.c Sat Sep 27 19:39:17 2008 +0000 +++ b/libpurple/dnsquery.c Sat Sep 27 19:39:40 2008 +0000 @@ -461,8 +461,8 @@ return FALSE; } if (rc < sizeof(dns_params)) { - purple_debug_error("dns", "Tried to read %" G_GSSIZE_FORMAT - " bytes from child but only read %" G_GSSIZE_FORMAT "\n", + purple_debug_error("dns", "Tried to write %" G_GSSIZE_FORMAT + " bytes to child but only wrote %" G_GSSIZE_FORMAT "\n", sizeof(dns_params), rc); purple_dnsquery_resolver_destroy(resolver); return FALSE; diff -r be762644486f -r cd4a5275ba06 libpurple/plugins/ssl/ssl-nss.c --- a/libpurple/plugins/ssl/ssl-nss.c Sat Sep 27 19:39:17 2008 +0000 +++ b/libpurple/plugins/ssl/ssl-nss.c Sat Sep 27 19:39:40 2008 +0000 @@ -141,6 +141,19 @@ g_free(lib); NSS_SetDomesticPolicy(); + SSL_CipherPrefSetDefault(TLS_DHE_RSA_WITH_AES_256_CBC_SHA, 1); + SSL_CipherPrefSetDefault(TLS_DHE_DSS_WITH_AES_256_CBC_SHA, 1); + SSL_CipherPrefSetDefault(TLS_RSA_WITH_AES_256_CBC_SHA, 1); + SSL_CipherPrefSetDefault(TLS_DHE_DSS_WITH_RC4_128_SHA, 1); + SSL_CipherPrefSetDefault(TLS_DHE_RSA_WITH_AES_128_CBC_SHA, 1); + SSL_CipherPrefSetDefault(TLS_DHE_DSS_WITH_AES_128_CBC_SHA, 1); + SSL_CipherPrefSetDefault(SSL_RSA_WITH_RC4_128_SHA, 1); + SSL_CipherPrefSetDefault(TLS_RSA_WITH_AES_128_CBC_SHA, 1); + SSL_CipherPrefSetDefault(SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA, 1); + SSL_CipherPrefSetDefault(SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA, 1); + SSL_CipherPrefSetDefault(SSL_DHE_RSA_WITH_DES_CBC_SHA, 1); + SSL_CipherPrefSetDefault(SSL_DHE_DSS_WITH_DES_CBC_SHA, 1); + _identity = PR_GetUniqueIdentity("Purple"); _nss_methods = PR_GetDefaultIOMethods(); } diff -r be762644486f -r cd4a5275ba06 libpurple/protocols/msn/group.h --- a/libpurple/protocols/msn/group.h Sat Sep 27 19:39:17 2008 +0000 +++ b/libpurple/protocols/msn/group.h Sat Sep 27 19:39:40 2008 +0000 @@ -33,10 +33,10 @@ #include "userlist.h" #define MSN_INDIVIDUALS_GROUP_ID "1983" -#define MSN_INDIVIDUALS_GROUP_NAME "Other Contacts" +#define MSN_INDIVIDUALS_GROUP_NAME _("Other Contacts") #define MSN_NON_IM_GROUP_ID "email" -#define MSN_NON_IM_GROUP_NAME "Non-IM Contacts" +#define MSN_NON_IM_GROUP_NAME _("Non-IM Contacts") /** * A group. diff -r be762644486f -r cd4a5275ba06 pidgin/gtkimhtml.c --- a/pidgin/gtkimhtml.c Sat Sep 27 19:39:17 2008 +0000 +++ b/pidgin/gtkimhtml.c Sat Sep 27 19:39:40 2008 +0000 @@ -348,6 +348,9 @@ g_string_free (t->values, TRUE); g_free (t->children); } + if (t && t->image) { + t->image->imhtml = NULL; + } g_free (t); } } @@ -1958,7 +1961,6 @@ } } -/* this isn't used yet static void gtk_smiley_tree_remove (GtkSmileyTree *tree, GtkIMHtmlSmiley *smiley) { @@ -1974,7 +1976,7 @@ pos = strchr (t->values->str, *x); if (pos) - t = t->children [(int) pos - (int) t->values->str]; + t = t->children [(unsigned int) pos - (unsigned int) t->values->str]; else return; @@ -1985,8 +1987,6 @@ t->image = NULL; } } -*/ - static gint gtk_smiley_tree_lookup (GtkSmileyTree *tree, @@ -2046,6 +2046,25 @@ return 0; } +static void +gtk_imhtml_disassociate_smiley_foreach(gpointer key, gpointer value, + gpointer user_data) +{ + GtkSmileyTree *tree = (GtkSmileyTree *) value; + GtkIMHtmlSmiley *smiley = (GtkIMHtmlSmiley *) user_data; + gtk_smiley_tree_remove(tree, smiley); +} + +static void +gtk_imhtml_disassociate_smiley(GtkIMHtmlSmiley *smiley) +{ + if (smiley->imhtml) { + gtk_smiley_tree_remove(smiley->imhtml->default_smilies, smiley); + g_hash_table_foreach(smiley->imhtml->smiley_data, + gtk_imhtml_disassociate_smiley_foreach, smiley); + } +} + void gtk_imhtml_associate_smiley (GtkIMHtml *imhtml, const gchar *sml, @@ -5617,12 +5636,14 @@ smiley->smile = g_strdup(shortcut); smiley->hidden = hide; smiley->flags = flags; + smiley->imhtml = NULL; gtk_imhtml_smiley_reload(smiley); return smiley; } void gtk_imhtml_smiley_destroy(GtkIMHtmlSmiley *smiley) { + gtk_imhtml_disassociate_smiley(smiley); g_free(smiley->smile); g_free(smiley->file); if (smiley->icon) diff -r be762644486f -r cd4a5275ba06 po/POTFILES.in --- a/po/POTFILES.in Sat Sep 27 19:39:17 2008 +0000 +++ b/po/POTFILES.in Sat Sep 27 19:39:40 2008 +0000 @@ -98,6 +98,7 @@ libpurple/protocols/msn/contact.c libpurple/protocols/msn/dialog.c libpurple/protocols/msn/error.c +libpurple/protocols/msn/group.h libpurple/protocols/msn/msn.c libpurple/protocols/msn/nexus.c libpurple/protocols/msn/notification.c