# HG changeset patch # User Sadrul Habib Chowdhury # Date 1200255923 0 # Node ID c55e5058499a62614246b590ce4da54c89139b27 # Parent 35d5b7804449533cf513f225ddeba4d85c2e873c# Parent 028128f35e418b4ae8f55a22a26404c662f3a598 merge of '1ae0a697e31d7fa2a7f231ecd1719149f5348d82' and '9ed5f5e06f9fe6034930bfb2c6e174d6d5de0638' diff -r 35d5b7804449 -r c55e5058499a COPYRIGHT --- a/COPYRIGHT Sun Jan 13 20:16:20 2008 +0000 +++ b/COPYRIGHT Sun Jan 13 20:25:23 2008 +0000 @@ -371,6 +371,7 @@ Richard Stellingwerff Charlie Stockman David Stoddard +Andreas Stührk Oleg Sukhodolsky Sun Microsystems Mårten Svantesson (fursten) diff -r 35d5b7804449 -r c55e5058499a libpurple/dbus-server.c --- a/libpurple/dbus-server.c Sun Jan 13 20:16:20 2008 +0000 +++ b/libpurple/dbus-server.c Sun Jan 13 20:25:23 2008 +0000 @@ -729,7 +729,7 @@ if (id == 0 && val != NULL) error = TRUE; /* Some error happened. */ dbus_message_iter_append_basic(iter, - (sizeof(void *) == 4) ? DBUS_TYPE_UINT32 : DBUS_TYPE_UINT64, &id); + (sizeof(id) == sizeof(dbus_int32_t)) ? DBUS_TYPE_INT32 : DBUS_TYPE_INT64, &id); break; default: /* no conversion implemented */ g_return_val_if_reached(TRUE); diff -r 35d5b7804449 -r c55e5058499a libpurple/protocols/yahoo/yahoo.h --- a/libpurple/protocols/yahoo/yahoo.h Sun Jan 13 20:16:20 2008 +0000 +++ b/libpurple/protocols/yahoo/yahoo.h Sun Jan 13 20:25:23 2008 +0000 @@ -48,6 +48,8 @@ /*not sure, must test:*/ #define YAHOOJP_XFER_RELAY_HOST "relay.msg.yahoo.com" #define YAHOOJP_XFER_RELAY_PORT 80 +#define YAHOOJP_ROOMLIST_URL "http://insider.msg.yahoo.co.jp/ycontent/" +#define YAHOOJP_ROOMLIST_LOCALE "ja" #define YAHOO_AUDIBLE_URL "http://us.dl1.yimg.com/download.yahoo.com/dl/aud" diff -r 35d5b7804449 -r c55e5058499a libpurple/protocols/yahoo/yahoo_packet.h --- a/libpurple/protocols/yahoo/yahoo_packet.h Sun Jan 13 20:16:20 2008 +0000 +++ b/libpurple/protocols/yahoo/yahoo_packet.h Sun Jan 13 20:25:23 2008 +0000 @@ -101,7 +101,7 @@ YAHOO_SERVICE_AUTH_REQ_15 = 0xd6, YAHOO_SERVICE_CHGRP_15 = 0xe7, YAHOO_SERVICE_STATUS_15 = 0xf0, - YAHOO_SERVICE_LIST_15 = 0Xf1, + YAHOO_SERVICE_LIST_15 = 0xf1, YAHOO_SERVICE_FILETRANS_15 = 0xdc, YAHOO_SERVICE_FILETRANS_INFO_15 = 0xdd, YAHOO_SERVICE_FILETRANS_ACC_15 = 0xde, diff -r 35d5b7804449 -r c55e5058499a libpurple/protocols/yahoo/yahoochat.c --- a/libpurple/protocols/yahoo/yahoochat.c Sun Jan 13 20:16:20 2008 +0000 +++ b/libpurple/protocols/yahoo/yahoochat.c Sun Jan 13 20:25:23 2008 +0000 @@ -1461,28 +1461,30 @@ PurpleRoomlist *yahoo_roomlist_get_list(PurpleConnection *gc) { - struct yahoo_roomlist *yrl; + PurpleAccount *account; PurpleRoomlist *rl; - const char *rll; + PurpleRoomlistField *f; + GList *fields = NULL; + struct yahoo_roomlist *yrl; + const char *rll, *rlurl; char *url; - GList *fields = NULL; - PurpleRoomlistField *f; - rll = purple_account_get_string(purple_connection_get_account(gc), - "room_list_locale", YAHOO_ROOMLIST_LOCALE); + account = purple_connection_get_account(gc); - if (rll != NULL && *rll != '\0') { - url = g_strdup_printf("%s?chatcat=0&intl=%s", - purple_account_get_string(purple_connection_get_account(gc), - "room_list", YAHOO_ROOMLIST_URL), rll); - } else { - url = g_strdup_printf("%s?chatcat=0", - purple_account_get_string(purple_connection_get_account(gc), - "room_list", YAHOO_ROOMLIST_URL)); + /* for Yahoo Japan, it appears there is only one valid URL and locale */ + if(purple_account_get_bool(account, "yahoojp", FALSE)) { + rll = YAHOOJP_ROOMLIST_LOCALE; + rlurl = YAHOOJP_ROOMLIST_URL; + } + else { /* but for the rest of the world that isn't the case */ + rll = purple_account_get_string(account, "room_list_locale", YAHOO_ROOMLIST_LOCALE); + rlurl = purple_account_get_string(account, "room_list", YAHOO_ROOMLIST_URL); } + url = g_strdup_printf("%s?chatcat=0&intl=%s", rlurl, rll); + yrl = g_new0(struct yahoo_roomlist, 1); - rl = purple_roomlist_new(purple_connection_get_account(gc)); + rl = purple_roomlist_new(account); yrl->list = rl; purple_url_parse(url, &(yrl->host), NULL, &(yrl->path), NULL, NULL); @@ -1508,7 +1510,7 @@ purple_roomlist_set_fields(rl, fields); - if (purple_proxy_connect(NULL, purple_connection_get_account(gc), yrl->host, 80, + if (purple_proxy_connect(NULL, account, yrl->host, 80, yahoo_roomlist_got_connected, yrl) == NULL) { purple_notify_error(gc, NULL, _("Connection problem"), _("Unable to fetch room list.")); diff -r 35d5b7804449 -r c55e5058499a pidgin/gtkmain.c --- a/pidgin/gtkmain.c Sun Jan 13 20:16:20 2008 +0000 +++ b/pidgin/gtkmain.c Sun Jan 13 20:25:23 2008 +0000 @@ -508,6 +508,7 @@ {"session", required_argument, NULL, 's'}, {"version", no_argument, NULL, 'v'}, {"display", required_argument, NULL, 'D'}, + {"sync", no_argument, NULL, 'S'}, {0, 0, 0, 0} }; @@ -517,7 +518,7 @@ debug_enabled = FALSE; #endif - /* This is the first Glib function call. Make sure to initialize GThread bfeore then */ + /* Initialize GThread before calling any Glib or GTK+ functions. */ g_thread_init(NULL); #ifdef ENABLE_NLS @@ -654,6 +655,7 @@ opt_si = FALSE; break; case 'D': /* --display */ + case 'S': /* --sync */ /* handled by gtk_init_check below */ break; case '?': /* show terse help */ diff -r 35d5b7804449 -r c55e5058499a po/POTFILES.in --- a/po/POTFILES.in Sun Jan 13 20:16:20 2008 +0000 +++ b/po/POTFILES.in Sun Jan 13 20:25:23 2008 +0000 @@ -72,6 +72,7 @@ libpurple/protocols/bonjour/bonjour.c libpurple/protocols/bonjour/bonjour.h libpurple/protocols/bonjour/jabber.c +libpurple/protocols/bonjour/mdns_win32.c libpurple/protocols/gg/gg.c libpurple/protocols/irc/cmds.c libpurple/protocols/irc/dcc_send.c @@ -213,6 +214,7 @@ pidgin/pidgin.h pidgin/pidgincombobox.c pidgin/pidginstock.c +pidgin/pidgintooltip.c pidgin/pixmaps/emotes/default/24/default.theme.in pidgin/pixmaps/emotes/none/none.theme.in pidgin/plugins/cap/cap.c