pidgin: 13d6e924: Allow signing on with usernames containi...

markdoliner at pidgin.im markdoliner at pidgin.im
Mon Jan 9 06:01:05 EST 2012


----------------------------------------------------------------------
Revision: 13d6e924c9257b20e21050646cab88043bdb2e15
Parent:   874feebb31b13ceb4c6789225711244d51bc8e88
Author:   markdoliner at pidgin.im
Date:     01/09/12 05:58:37
Branch:   im.pidgin.pidgin
URL: http://d.pidgin.im/viewmtn/revision/info/13d6e924c9257b20e21050646cab88043bdb2e15

Changelog: 

Allow signing on with usernames containing periods and
underscores.  Allow adding buddies containing periods
and underscores.

Fixes #13500.

Changes against parent 874feebb31b13ceb4c6789225711244d51bc8e88

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

-------------- next part --------------
============================================================
--- ChangeLog	b20412c77e8ea45a5f53560e7b70916369b64b81
+++ ChangeLog	0c667b636d9c7ace773074aaabac674d14724ea0
@@ -6,9 +6,12 @@ version 3.0.0 (??/??/????):
 	  (Dan Williams) (#13859)
 
 	AIM and ICQ:
-	* Make buddy list management code more efficient. (Oliver) (#4816)
+	* 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)
+	* Make buddy list management code more efficient. (Oliver) (#4816)
 
 	Bonjour:
 	* Support file transfers up to ~9 EiB.
============================================================
--- libpurple/protocols/oscar/util.c	bb5244ce02caef6b30aea77b1e274b72f42f9d01
+++ libpurple/protocols/oscar/util.c	a9118388fb62ba3be889697b3a69b689425c16a5
@@ -141,12 +141,12 @@ oscar_util_valid_name_aim(const char *na
 	if (purple_email_is_valid(name))
 		return TRUE;
 
-	/* Normal AIM usernames can't start with a number */
-	if (isdigit(name[0]))
+	/* Normal AIM usernames can't start with a number, period or underscore */
+	if (isalnum(name[0]))
 		return FALSE;
 
 	for (i = 0; name[i] != '\0'; i++) {
-		if (!isalnum(name[i]) && (name[i] != ' '))
+		if (!isalnum(name[i]) && name[i] != ' ' && name[i] != '.' && name[i] != '_')
 			return FALSE;
 	}
 


More information about the Commits mailing list