# HG changeset patch # User Evan Schoenberg # Date 1259893481 0 # Node ID f8da53e381dd97d10ab6dc184976d4d8a5405c0d # Parent ebb424b7e0a1cd8aded91b5d568d1d8be352d59e Improved handling of the 0x00d charset in AIM, which is sent by mobile devices speaking ISO-8859-1. Try UTF-8 first (the encoding sent by iChat in a Direct IM with non-ASCII characters), then fall back to ISO-8859-1. Fixes #a13544, a bug created with the fix for iChat DIM encoding new in libpurple 2.6.4" applied changes from 6f3a1b3c52803e11d4cda1e0537c1270599e8d8e through ed0a2a35c7e22519df27c50069c22b03e01c027a diff -r ebb424b7e0a1 -r f8da53e381dd libpurple/protocols/oscar/oscar.c --- a/libpurple/protocols/oscar/oscar.c Thu Dec 03 08:02:54 2009 +0000 +++ b/libpurple/protocols/oscar/oscar.c Fri Dec 04 02:24:41 2009 +0000 @@ -457,10 +457,10 @@ charsetstr1 = "ASCII"; charsetstr2 = purple_account_get_string(account, "encoding", OSCAR_DEFAULT_CUSTOM_ENCODING); } else if (charset == 0x000d) { - /* iChat sending unicode over a Direct IM connection = Unicode */ - /* Mobile AIM client on a Nokia 3100 and an LG VX6000 = ISO-8859-1 */ - charsetstr1 = "UTF-16BE"; - charsetstr2 = "UTF-8"; + /* iChat sending unicode over a Direct IM connection = UTF-8 */ + /* Mobile AIM client on multiple devices (including Blackberry Tour, Nokia 3100, and LG VX6000) = ISO-8859-1 */ + charsetstr1 = "UTF-8"; + charsetstr2 = "ISO-8859-1"; charsetstr3 = purple_account_get_string(account, "encoding", OSCAR_DEFAULT_CUSTOM_ENCODING); } else { /* Unknown, hope for valid UTF-8... */