|
|
发表于 2008-6-28 10:23:18
|
显示全部楼层
Post by colyli;1868470
以前一直用2.1.1,没有碰到这个问题。这几天升级到2.4.2发现QQ群不能正确显示,并且好友列表的加载总是出错。群显示的问题,我发了patch到pidgin的邮件列表里,估计这个修改在2.4.3的时候能出来。patch很简单,修改4行,在我的机器上可以用:
diff -ru pidgin-2.4.1-orig//libpurple/protocols/qq/char_conv.c pidgin-2.4.1/libpurple/protocols/qq/char_conv.c
--- pidgin-2.4.1-orig//libpurple/protocols/qq/char_conv.c 2008-04-01 01:21:24.000000000 +0800
+++ pidgin-2.4.1/libpurple/protocols/qq/char_conv.c 2008-06-27 23:16:27.000000000 +0800
@@ -132,8 +132,8 @@
g_return_val_if_fail(data != NULL && from_charset != NULL, -1);
- len = data[0];
- *ret = _my_convert((gchar *) (data + 1), (gssize) len, UTF8, from_charset);
+ len = strlen(data);
+ *ret = _my_convert((gchar *) data, (gssize) len, UTF8, from_charset);
return len + 1;
}
diff -ru pidgin-2.4.1-orig//libpurple/protocols/qq/group_info.c pidgin-2.4.1/libpurple/protocols/qq/group_info.c
--- pidgin-2.4.1-orig//libpurple/protocols/qq/group_info.c 2008-04-01 01:21:24.000000000 +0800
+++ pidgin-2.4.1/libpurple/protocols/qq/group_info.c 2008-06-27 23:15:46.000000000 +0800
@@ -170,6 +170,7 @@
GSList *pending_id;
gint pascal_len, i;
guint32 unknown4;
+ guint16 unknown2;
guint8 unknown1;
g_return_if_fail(data != NULL && len > 0);
@@ -198,7 +199,7 @@
read_packet_dw(data, cursor, len, &(group->group_category));
read_packet_w(data, cursor, len, &max_members);
read_packet_b(data, cursor, len, &unknown1);
- read_packet_dw(data, cursor, len, &(unknown4)); /* versionID */
+ read_packet_w(data, cursor, len, &(unknown2));
pascal_len = convert_as_pascal_string(*cursor, &(group->group_name_utf8), QQ_CHARSET_DEFAULT);
*cursor += pascal_len;
~
兄弟 你好,我是用RPM包安装的,如何把您的这个PATCH 打上去?谢谢了。 |
|