pidgin.2.x.y: 2cca5256: *** Plucked rev 950eb2e674f6da789c013276...

markdoliner at pidgin.im markdoliner at pidgin.im
Sat Feb 18 18:30:47 EST 2012


----------------------------------------------------------------------
Revision: 2cca525615a367389b1639a5246fbe6d451150c4
Parent:   9e9d09486a04f5adb2e51b0f5aada69a9b053e93
Author:   markdoliner at pidgin.im
Date:     02/18/12 18:28:43
Branch:   im.pidgin.pidgin.2.x.y
URL: http://d.pidgin.im/viewmtn/revision/info/2cca525615a367389b1639a5246fbe6d451150c4

Changelog: 

*** Plucked rev 950eb2e674f6da789c0132765c4f2d68ccd0d617 (markdoliner at pidgin.im):
Change the heuristic we use for setting od->icq.  We used to set it to
true any time the username contained only digits.  Now we set it to try
if account->protocol_id is prpl-icq.  This means we're now relying on the
user to tell us whether their account is AIM or ICQ... and I think that's
fine.

The reason for this change is that we/AOL apparently allow the user to
login to ICQ accounts by entering their email address.  This means we're
no longer able to look at the username to determine whether it's an AIM
name or an ICQ name.

This was a problem because we were trying to format the spacing/capitalization
in the username if the name was an icq email address, which resulted in
an annoying popup error at login.  Fixes #13883.

It's probably safe for this to go into im.pidgin.pidgin (maybe after the
pending release), but I really don't want to keep changing the 2.x.y branch.
I think we need to move on to 3.x.y.

Changes against parent 9e9d09486a04f5adb2e51b0f5aada69a9b053e93

  patched  ChangeLog
  patched  libpurple/protocols/oscar/oscar.c

-------------- next part --------------
============================================================
--- ChangeLog	09dfaca6a6531e2ce07704d040bb75036dc12fbc
+++ ChangeLog	5ecdcb733eccfb12bae3cf132d97e2651d72425d
@@ -17,6 +17,8 @@ version 2.10.2 (02/22/2012):
 	* Allow signing on with usernames containing periods and
 	  underscores. (#13500)
 	* Allow adding buddies containing periods and underscores. (#13500)
+	* Don't try to format ICQ usernames entered as email addresses.
+	  Gets rid of an "Unable to format username" error at login. (#13883)
 
 	MSN:
 	* Fix possible crashes caused by not validating incoming messages as
============================================================
--- libpurple/protocols/oscar/oscar.c	8d2cc45405a2fa31fb08c24aac86d5915992ab7b
+++ libpurple/protocols/oscar/oscar.c	9efd439a2faa6e0ed423b034bba91b612454088b
@@ -741,7 +741,7 @@ oscar_login(PurpleAccount *account)
 	}
 
 	gc->flags |= PURPLE_CONNECTION_HTML;
-	if (oscar_util_valid_name_icq((purple_account_get_username(account)))) {
+	if (g_str_equal(purple_account_get_protocol_id(account), "prpl-icq")) {
 		od->icq = TRUE;
 	} else {
 		gc->flags |= PURPLE_CONNECTION_AUTO_RESP;
@@ -4586,32 +4586,18 @@ const char *oscar_list_icon_icq(PurpleAc
 const char *oscar_list_icon_icq(PurpleAccount *a, PurpleBuddy *b)
 {
 	const char *name = b ? purple_buddy_get_name(b) : NULL;
-	if ((b == NULL) || (name == NULL) || oscar_util_valid_name_sms(name))
-	{
-		if (a == NULL || oscar_util_valid_name_icq(purple_account_get_username(a)))
-			return "icq";
-		else
-			return "aim";
-	}
+	if (name && !oscar_util_valid_name_sms(name) && oscar_util_valid_name_icq(name))
+		return "icq";
 
-	if (oscar_util_valid_name_icq(name))
-		return "icq";
-	return "aim";
+	return "icq";
 }
 
 const char *oscar_list_icon_aim(PurpleAccount *a, PurpleBuddy *b)
 {
 	const char *name = b ? purple_buddy_get_name(b) : NULL;
-	if ((b == NULL) || (name == NULL) || oscar_util_valid_name_sms(name))
-	{
-		if (a != NULL && oscar_util_valid_name_icq(purple_account_get_username(a)))
-			return "icq";
-		else
-			return "aim";
-	}
+	if (name && !oscar_util_valid_name_sms(name) && oscar_util_valid_name_icq(name))
+		return "icq";
 
-	if (oscar_util_valid_name_icq(name))
-		return "icq";
 	return "aim";
 }
 


More information about the Commits mailing list