Mercurial > pidgin
changeset 28385:d5ff2cd6064a
merge of '0ff7fb50305f33b84a373ff00a085c25175515c1'
and 'af00ae634db8d99b296a90e1e0777bd23bd4df6a'
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Thu, 15 Oct 2009 16:13:57 +0000 |
parents | ef513141e960 (current diff) 29e96fb6cff3 (diff) |
children | 08ffa726aea2 3161c687d7bc e37f85160784 0db570ed5570 |
files | |
diffstat | 4 files changed, 47 insertions(+), 5 deletions(-) [+] |
line wrap: on
line diff
--- a/COPYRIGHT Thu Oct 15 16:13:00 2009 +0000 +++ b/COPYRIGHT Thu Oct 15 16:13:57 2009 +0000 @@ -406,11 +406,10 @@ Carsten Schaar Toby Schaffer Jonathan Schleifer <js-pidgin@webkeks.org> -Matteo Settenvini -Colin Seymour Luke Schierer Ralph Schmieder David Schmitt +Heiko Schmitt Mark Schneider Evan Schoenberg Gabriel Schulhof @@ -420,6 +419,8 @@ Peter Seebach Don Seiler Leonardo Serra +Matteo Settenvini +Colin Seymour Jim Seymour Javeed Shaikh Joe Shaw
--- a/ChangeLog Thu Oct 15 16:13:00 2009 +0000 +++ b/ChangeLog Thu Oct 15 16:13:57 2009 +0000 @@ -32,7 +32,7 @@ Pidgin: * The userlist in a multiuser chat can be styled via gtkrc by using the - widget name "pidgin_conv_userlist". + widget name "pidgin_conv_userlist". (Heiko Schmitt) version 2.6.2 (09/05/2009): libpurple:
--- a/libpurple/protocols/yahoo/libymsg.c Thu Oct 15 16:13:00 2009 +0000 +++ b/libpurple/protocols/yahoo/libymsg.c Thu Oct 15 16:13:57 2009 +0000 @@ -1140,10 +1140,12 @@ } } + if(im->fed != YAHOO_FEDERATION_NONE) + g_free(fed_from); + g_free(im); } - if (fed_from != im->from) - g_free(fed_from); + g_slist_free(list); }
--- a/pidgin/gtkutils.c Thu Oct 15 16:13:00 2009 +0000 +++ b/pidgin/gtkutils.c Thu Oct 15 16:13:57 2009 +0000 @@ -3901,6 +3901,40 @@ return (gnome_url_handlers != NULL); } +#ifdef _WIN32 +static void +winpidgin_register_win32_url_handlers(void) +{ + int idx = 0; + LONG ret = ERROR_SUCCESS; + + do { + DWORD nameSize = 256; + char protocol[256]; + /* I don't think we need to worry about non-ASCII protocol names */ + ret = RegEnumKeyExA(HKEY_CLASSES_ROOT, idx++, protocol, &nameSize, + NULL, NULL, NULL, NULL); + if (ret == ERROR_SUCCESS) { + HKEY reg_key = NULL; + ret = RegOpenKeyExA(HKEY_CLASSES_ROOT, protocol, 0, KEY_READ, ®_key); + if (ret == ERROR_SUCCESS) { + ret = RegQueryValueExA(reg_key, "URL Protocol", NULL, NULL, NULL, NULL); + if (ret == ERROR_SUCCESS) { + /* We still pass everything to the "http" "open" handler for security reasons */ + gtk_imhtml_class_register_protocol(protocol, url_clicked_cb, link_context_menu); + } + RegCloseKey(reg_key); + } + ret = ERROR_SUCCESS; + } + } while (ret == ERROR_SUCCESS); + + if (ret != ERROR_NO_MORE_ITEMS) + purple_debug_error("winpidgin", "Error iterating HKEY_CLASSES_ROOT subkeys: %ld\n", + ret); +} +#endif + void pidgin_utils_init(void) { gtk_imhtml_class_register_protocol("http://", url_clicked_cb, link_context_menu); @@ -3918,6 +3952,11 @@ /* If we're under GNOME, try registering the system URL handlers. */ if (purple_running_gnome()) register_gnome_url_handlers(); + +#ifdef _WIN32 + winpidgin_register_win32_url_handlers(); +#endif + } void pidgin_utils_uninit(void)