pidgin: a657534f: OOH! I think I found the cause of a bug...
markdoliner at pidgin.im
markdoliner at pidgin.im
Mon Feb 21 04:50:42 EST 2011
----------------------------------------------------------------------
Revision: a657534f694305a613db4946ca8ea9ab4c8f1c1d
Parent: 018335d39d5488d4512acce61adbb0318d01334f
Author: markdoliner at pidgin.im
Date: 02/21/11 04:45:47
Branch: im.pidgin.pidgin
URL: http://d.pidgin.im/viewmtn/revision/info/a657534f694305a613db4946ca8ea9ab4c8f1c1d
Changelog:
OOH! I think I found the cause of a bug! I changed this function in revision
eadc83c534fbbc673a6876ddb1e0bdac8428c07b to try to make it cleaner. When I
did that, I added a break here when I should have added a continue. The result
is that if we encounter a non-utf8 name for an item in your server side buddy
list then we bail out earlier and don't add any server stored buddies to your
local list. That's bad. I think this caused a lot of people to not see their
complete buddy list. This probably affected ICQ users a lot more than AIM
users, because ICQ users tend to use more 3rd party IM clients, and 3rd party
IM clients sometimes put non-utf8 text in the name field of these items when
they shouldn't.
Hopefully fixes #13386
Changes against parent 018335d39d5488d4512acce61adbb0318d01334f
patched ChangeLog
patched libpurple/protocols/oscar/oscar.c
-------------- next part --------------
============================================================
--- ChangeLog 0f9aa15fc2cfe119c6cb3fee4cc5c06bc205a37e
+++ ChangeLog 2706a132221761c93ae5652b0df72cb6665d516c
@@ -4,6 +4,10 @@ version 2.7.11 (??/??/????):
General:
* Our bundled libgadu should now build on HP-UX.
+ AIM:
+ * Fix a bug where some buddies from your buddy list might not show up.
+ Affected non-English ICQ users the most. (#13386)
+
XMPP:
* Fix building on platforms with an older glib (inadvertantly broken in
2.7.10). (#13329)
============================================================
--- libpurple/protocols/oscar/oscar.c 007506f489c72c6bf026f3d20bd934c8380fc64c
+++ libpurple/protocols/oscar/oscar.c d2c9d3d86e975571c10f6163835a48696e3e2b81
@@ -4000,9 +4000,12 @@ static int purple_ssi_parselist(OscarDat
/*** Begin code for adding from server list to local list ***/
for (curitem=od->ssi.local; curitem; curitem=curitem->next) {
- if (curitem->name && !g_utf8_validate(curitem->name, -1, NULL))
+ if (curitem->name && !g_utf8_validate(curitem->name, -1, NULL)) {
/* Got node with invalid UTF-8 in the name. Skip it. */
- break;
+ purple_debug_warning("oscar", "ssi: server list contains item of "
+ "type 0x%04hhx with a non-utf8 name\n", curitem->type);
+ continue;
+ }
switch (curitem->type) {
case AIM_SSI_TYPE_BUDDY: { /* Buddy */
More information about the Commits
mailing list