# HG changeset patch # User Hu Yong # Date 1226386905 0 # Node ID 1aca68fe730cd85ba7ecff96b10b6417b682d903 # Parent b22f6fb98cca36978e8700fb65907f24a34e9b36 Change QQ number to unsigned long diff -r b22f6fb98cca -r 1aca68fe730c libpurple/protocols/qq/buddy_opt.c --- a/libpurple/protocols/qq/buddy_opt.c Tue Nov 11 07:00:27 2008 +0000 +++ b/libpurple/protocols/qq/buddy_opt.c Tue Nov 11 07:01:45 2008 +0000 @@ -110,11 +110,11 @@ g_free(who); if (buddy == NULL) { - purple_debug_error("QQ", "Can not find purple buddy of %d\n", uid); + purple_debug_error("QQ", "Can not find purple buddy of %u\n", uid); return NULL; } if (buddy->proto_data == NULL) { - purple_debug_error("QQ", "Can not find buddy data of %d\n", uid); + purple_debug_error("QQ", "Can not find buddy data of %u\n", uid); return NULL; } return (qq_buddy_data *)buddy->proto_data; @@ -146,9 +146,8 @@ return NULL; } + purple_debug_info("QQ", "Add new purple buddy: [%u]\n", uid); who = uid_to_purple_name(uid); - - purple_debug_info("QQ", "Add new purple buddy: [%s]\n", who); buddy = purple_buddy_new(gc->account, who, NULL); /* alias is NULL */ buddy->proto_data = NULL; @@ -214,7 +213,7 @@ g_return_if_fail(uid > 0); - g_snprintf(uid_str, sizeof(uid_str), "%d", uid); + g_snprintf(uid_str, sizeof(uid_str), "%u", uid); bytes = strlen(uid_str); qq_send_cmd_mess(gc, QQ_CMD_REMOVE_BUDDY, (guint8 *) uid_str, bytes, 0, uid); } @@ -234,7 +233,7 @@ bytes += qq_put8(raw_data + bytes, auth_len); bytes += qq_putdata(raw_data + bytes, auth, auth_len); - g_snprintf(uid_str, sizeof(uid_str), "%d", uid); + g_snprintf(uid_str, sizeof(uid_str), "%u", uid); bytes += qq_putdata(raw_data + bytes, (guint8 *)uid_str, strlen(uid_str)); qq_send_cmd_mess(gc, QQ_CMD_REMOVE_BUDDY, raw_data, bytes, 0, uid); @@ -318,7 +317,7 @@ add_req->auth_len = 0; who = uid_to_purple_name(uid); - msg = g_strdup_printf(_("%d needs Q&A"), uid); + msg = g_strdup_printf(_("%u needs Q&A"), uid); purple_request_input(gc, _("Add buddy Q&A"), msg, _("Input answer here"), NULL, @@ -481,7 +480,7 @@ g_return_if_fail(uid > 0); /* we need to send the ascii code of this uid to qq server */ - g_snprintf(uid_str, sizeof(uid_str), "%d", uid); + g_snprintf(uid_str, sizeof(uid_str), "%u", uid); qq_send_cmd_mess(gc, QQ_CMD_ADD_BUDDY_NO_AUTH, (guint8 *) uid_str, strlen(uid_str), 0, uid); } @@ -501,25 +500,26 @@ /* this buddy needs authentication, text conversion is done at lowest level */ static void request_add_buddy_auth(PurpleConnection *gc, guint32 uid, const gchar response, const gchar *text) { - gchar *text_qq, uid_str[11]; - guint8 bar, *raw_data; - gint bytes = 0; + guint8 raw_data[MAX_PACKET_SIZE - 16]; + gint bytes; + gchar *msg, uid_str[11]; + guint8 bar; g_return_if_fail(uid != 0); - g_snprintf(uid_str, sizeof(uid_str), "%d", uid); + g_snprintf(uid_str, sizeof(uid_str), "%u", uid); bar = 0x1f; - raw_data = g_newa(guint8, QQ_MSG_IM_MAX); + bytes = 0; bytes += qq_putdata(raw_data + bytes, (guint8 *) uid_str, strlen(uid_str)); bytes += qq_put8(raw_data + bytes, bar); bytes += qq_put8(raw_data + bytes, response); if (text != NULL) { - text_qq = utf8_to_qq(text, QQ_CHARSET_DEFAULT); + msg = utf8_to_qq(text, QQ_CHARSET_DEFAULT); bytes += qq_put8(raw_data + bytes, bar); - bytes += qq_putdata(raw_data + bytes, (guint8 *) text_qq, strlen(text_qq)); - g_free(text_qq); + bytes += qq_putdata(raw_data + bytes, (guint8 *) msg, strlen(msg)); + g_free(msg); } qq_send_cmd(gc, QQ_CMD_ADD_BUDDY_AUTH, raw_data, bytes); @@ -661,7 +661,7 @@ } who = uid_to_purple_name(uid); - msg = g_strdup_printf(_("%d needs authentication"), uid); + msg = g_strdup_printf(_("%u needs authentication"), uid); purple_request_input(gc, _("Add buddy authorize"), msg, _("Input request here"), _("Would you be my friend?"), @@ -706,7 +706,7 @@ return; } - purple_debug_info("QQ", "Remove buddy with invalid QQ number %d\n", uid); + purple_debug_info("QQ", "Remove buddy with invalid QQ number %u\n", uid); qq_buddy_free(buddy); } @@ -745,7 +745,7 @@ buddy = qq_buddy_find(gc, uid); if (data[0] != 0) { - msg = g_strdup_printf(_("Failed removing buddy %d"), uid); + msg = g_strdup_printf(_("Failed removing buddy %u"), uid); purple_notify_info(gc, _("QQ Buddy"), msg, NULL); g_free(msg); } @@ -767,7 +767,7 @@ qd = (qq_data *) gc->proto_data; if (data[0] == 0) { - purple_debug_info("QQ", "Reply OK for removing me from %d's buddy list\n", uid); + purple_debug_info("QQ", "Reply OK for removing me from %u's buddy list\n", uid); return; } msg = g_strdup_printf(_("Failed removing me from %d's buddy list"), uid); @@ -788,7 +788,7 @@ qd = (qq_data *) gc->proto_data; - purple_debug_info("QQ", "Process buddy add for id [%d]\n", uid); + purple_debug_info("QQ", "Process buddy add for id [%u]\n", uid); qq_show_packet("buddy_add_no_auth", data, data_len); if (NULL == (segments = split_data(data, data_len, "\x1f", 2))) @@ -796,7 +796,7 @@ dest_uid = segments[0]; reply = segments[1]; - if (strtol(dest_uid, NULL, 10) != qd->uid) { /* should not happen */ + if (strtoul(dest_uid, NULL, 10) != qd->uid) { /* should not happen */ purple_debug_error("QQ", "Add buddy reply is to [%s], not me!", dest_uid); g_strfreev(segments); return; @@ -814,7 +814,7 @@ } qq_request_get_buddies_online(gc, 0, 0); - purple_debug_info("QQ", "Successed adding into %d's buddy list", uid); + purple_debug_info("QQ", "Successed adding into %u's buddy list", uid); g_strfreev(segments); return; } @@ -850,7 +850,7 @@ qd = (qq_data *) gc->proto_data; - purple_debug_info("QQ", "Process buddy add no auth for id [%d]\n", uid); + purple_debug_info("QQ", "Process buddy add no auth for id [%u]\n", uid); qq_show_packet("buddy_add_no_auth_ex", data, data_len); bytes = 0; @@ -860,7 +860,7 @@ g_return_if_fail(dest_uid == uid); if (reply == 0x99) { - purple_debug_info("QQ", "Successed adding buddy %d\n", uid); + purple_debug_info("QQ", "Successed adding buddy %u\n", uid); qq_buddy_find_or_new(gc, uid); qq_request_buddy_info(gc, uid, 0, 0); @@ -874,7 +874,7 @@ } if (reply != 0) { - purple_debug_info("QQ", "Failed adding buddy %d, Unknow reply 0x%02X\n", + purple_debug_info("QQ", "Failed adding buddy %u, Unknow reply 0x%02X\n", uid, reply); } @@ -943,7 +943,7 @@ g_return_if_fail(uid != 0 && reason != NULL); - purple_debug_info("QQ", "Buddy %d request adding, msg: %s\n", uid, reason); + purple_debug_info("QQ", "Buddy %u request adding, msg: %s\n", uid, reason); add_req = g_new0(qq_buddy_req, 1); add_req->gc = gc; @@ -973,7 +973,7 @@ gchar *msg, *reason; g_return_if_fail(from != NULL && to != NULL); - uid = strtol(from, NULL, 10); + uid = strtoul(from, NULL, 10); g_return_if_fail(uid != 0); if (purple_prefs_get_bool("/plugins/prpl/qq/auto_get_authorize_info")) { @@ -1022,7 +1022,7 @@ g_return_if_fail(uid != 0); bytes += qq_get16(&flag1, data + bytes); bytes += qq_get16(&flag2, data + bytes); - purple_debug_info("QQ", "Check code reply Ok, uid %d, flag 0x%04X-0x%04X\n", + purple_debug_info("QQ", "Check code reply Ok, uid %u, flag 0x%04X-0x%04X\n", uid, flag1, flag2); return; } @@ -1036,7 +1036,7 @@ g_return_if_fail(code != NULL && code_len > 0 && from != NULL); - uid = strtol(from, NULL, 10); + uid = strtoul(from, NULL, 10); raw_data = g_newa(guint8, code_len + 16); bytes = 0; bytes += qq_put8(raw_data + bytes, 0x03); @@ -1085,7 +1085,7 @@ g_return_if_fail(from != NULL && to != NULL); g_return_if_fail(data != NULL && data_len >= 3); - uid = strtol(from, NULL, 10); + uid = strtoul(from, NULL, 10); g_return_if_fail(uid != 0); /* qq_show_packet("server_buddy_add_request_ex", data, data_len); */ @@ -1116,7 +1116,7 @@ g_return_if_fail(from != NULL && to != NULL); - uid = strtol(from, NULL, 10); + uid = strtoul(from, NULL, 10); who = uid_to_purple_name(uid); buddy = purple_find_buddy(account, who); @@ -1189,7 +1189,7 @@ qd = (qq_data *) gc->proto_data; - uid = strtol(from, NULL, 10); + uid = strtoul(from, NULL, 10); g_return_if_fail(uid > 0); server_buddy_check_code(gc, from, data, data_len); @@ -1251,7 +1251,7 @@ g_free(primary); g_free(secondary); - uid = strtol(from, NULL, 10); + uid = strtoul(from, NULL, 10); g_return_if_fail(uid != 0); buddy = qq_buddy_find(gc, uid);