changeset 29724:0c764778c765

merge of '2dffa8ba1bee1171684d1f2eda5b5ba307787274' and '7f87d4b5d3cc6e2b720d52df157f2e5d9ebe39ca'
author Sadrul Habib Chowdhury <imadil@gmail.com>
date Tue, 13 Apr 2010 16:28:32 +0000
parents 0625cebc84d7 (current diff) 0665d7eff0a3 (diff)
children 823c3917d533
files ChangeLog
diffstat 6 files changed, 25 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Tue Apr 13 16:27:01 2010 +0000
+++ b/ChangeLog	Tue Apr 13 16:28:32 2010 +0000
@@ -54,13 +54,17 @@
 	  Klinikowski for the work and testing put in here!)
 	* Minimum requirement for external libgadu is now also 1.9.0-rc2.
 
-	ICQ:
+	AIM and ICQ:
 	* X-Status (Custom ICQ status icon) support.  Since most of the icons
 	  available reflect moods, this is labeled "Set Mood" on the Accounts->ICQ
 	  Account menu. (Andrew Ivanov, Tomáš Kebert, Yuriy Yevgrafov, and trac
 	  users bob007, salieff, and nops)
-	* Allow setting and displaying icons between 1x1 and 100x100 pixels.
-	  Previously only icons between 48x48 and 52x64 were allowed.
+	* Allow setting and displaying icons between 1x1 and 100x100 pixels for
+	  ICQ.  Previously only icons between 48x48 and 52x64 were allowed.
+	* When using the clientLogin authentication method, prompt for a
+	  password on reconnect when "Remember Password" is not checked and
+	  authentication fails due to an incorrect password.  (This is the same
+	  behavior as the legacy authentication method)
 
 	MSN:
 	* Support for version 9 of the MSN protocol has been removed.  This
--- a/libpurple/protocols/bonjour/jabber.c	Tue Apr 13 16:27:01 2010 +0000
+++ b/libpurple/protocols/bonjour/jabber.c	Tue Apr 13 16:28:32 2010 +0000
@@ -683,7 +683,7 @@
 	g_slist_free(buddies);
 
 	if (mbba->matched_buddies == NULL) {
-		purple_debug_info("bonjour", "We don't like invisible buddies, this is not a superheros comic\n");
+		purple_debug_info("bonjour", "We don't like invisible buddies, this is not a superheroes comic\n");
 		g_free(mbba);
 		close(client_socket);
 		return;
--- a/libpurple/protocols/gg/gg.c	Tue Apr 13 16:27:01 2010 +0000
+++ b/libpurple/protocols/gg/gg.c	Tue Apr 13 16:28:32 2010 +0000
@@ -1000,7 +1000,6 @@
 				       int status, const char *descr)
 {
 	gchar *from;
-	gchar *msg;
 	const char *st;
 	gchar *avatarurl;
 	PurpleUtilFetchUrlData *url_data;
@@ -1048,11 +1047,14 @@
 
 	purple_debug_info("gg", "st = %s\n", st);
 	//msg = charset_convert(descr, "CP1250", "UTF-8");
-	msg = g_strdup_printf("%s", descr);
-	purple_prpl_got_user_status(purple_connection_get_account(gc),
-				  from, st, "message", msg, NULL);
+	if (descr == NULL) {
+		purple_prpl_got_user_status(purple_connection_get_account(gc),
+		      from, st, NULL);
+	} else {
+		purple_prpl_got_user_status(purple_connection_get_account(gc),
+		    from, st, "message", descr, NULL);
+	}
 	g_free(from);
-	g_free(msg);
 }
 
 static void ggp_sr_close_cb(gpointer user_data)
@@ -1608,12 +1610,12 @@
 				purple_debug_info("gg",
 					"notify60: (%d) status=%d; version=%d; descr=%s\n",
 					ev->event.notify60[i].uin,
-					ev->event.notify60[i].status,
+					GG_S(ev->event.notify60[i].status),
 					ev->event.notify60[i].version,
 					ev->event.notify60[i].descr ? ev->event.notify60[i].descr : "(null)");
 
 				ggp_generic_status_handler(gc, ev->event.notify60[i].uin,
-					ev->event.notify60[i].status,
+					GG_S(ev->event.notify60[i].status),
 					ev->event.notify60[i].descr);
 			}
 			break;
@@ -1623,7 +1625,7 @@
 					ev->event.status.descr ? ev->event.status.descr : "(null)");
 
 			ggp_generic_status_handler(gc, ev->event.status.uin,
-				ev->event.status.status, ev->event.status.descr);
+				GG_S(ev->event.status.status), ev->event.status.descr);
 			break;
 		case GG_EVENT_STATUS60:
 			purple_debug_info("gg",
--- a/libpurple/protocols/gg/lib/events.c	Tue Apr 13 16:27:01 2010 +0000
+++ b/libpurple/protocols/gg/lib/events.c	Tue Apr 13 16:28:32 2010 +0000
@@ -1143,7 +1143,7 @@
 		case GG_NOTIFY_REPLY80:
 		{
 			struct gg_notify_reply80 *n = (void*) p;
-			int length = h->length, i = 0;
+			unsigned int length = h->length, i = 0;
 
 			gg_debug_session(sess, GG_DEBUG_MISC, "// gg_watch_fd_connected() received a notify reply\n");
 
--- a/libpurple/protocols/gg/lib/libgadu.c	Tue Apr 13 16:27:01 2010 +0000
+++ b/libpurple/protocols/gg/lib/libgadu.c	Tue Apr 13 16:28:32 2010 +0000
@@ -412,7 +412,8 @@
 {
 	struct gg_header h;
 	char *buf = NULL;
-	int ret = 0, offset, size = 0;
+	int ret = 0;
+	unsigned int offset, size = 0;
 
 	gg_debug_session(sess, GG_DEBUG_FUNCTION, "** gg_recv_packet(%p);\n", sess);
 
@@ -609,7 +610,7 @@
 	h->length = gg_fix32(tmp_length - sizeof(struct gg_header));
 
 	if ((gg_debug_level & GG_DEBUG_DUMP)) {
-		int i;
+		unsigned int i;
 
 		gg_debug_session(sess, GG_DEBUG_DUMP, "// gg_send_packet(0x%.2x)", gg_fix32(h->type));
 		for (i = 0; i < tmp_length; ++i)
--- a/libpurple/protocols/oscar/clientlogin.c	Tue Apr 13 16:27:01 2010 +0000
+++ b/libpurple/protocols/oscar/clientlogin.c	Tue Apr 13 16:28:32 2010 +0000
@@ -428,6 +428,9 @@
 				"was %d (%d): %s\n", status_code, status_detail_code, response);
 
 		if (status_code == 330 && status_detail_code == 3011) {
+			PurpleAccount *account = purple_connection_get_account(gc);
+			if (!purple_account_get_remember_password(account))
+				purple_account_set_password(account, NULL);
 			purple_connection_error_reason(gc,
 					PURPLE_CONNECTION_ERROR_AUTHENTICATION_FAILED,
 					_("Incorrect password"));