comparison libpurple/protocols/yahoo/yahoo.c @ 21803:ffbd2e3e10e4

Patch from Alex Badea to support receiving files from Yahoo users using the newer yahoo protocol. Committing this is very long overdue, it somehow slipped through the cracks for a long time. References #708.
author Daniel Atallah <daniel.atallah@gmail.com>
date Mon, 10 Dec 2007 02:07:01 +0000
parents 3265e4619117
children 97d530d11cc0 40a70eb8edb1 b0ed2ce8514d 60f5abc6cf0c e13759a83714
comparison
equal deleted inserted replaced
21802:d01d9107f263 21803:ffbd2e3e10e4
491 } 491 }
492 492
493 static void yahoo_process_cookie(struct yahoo_data *yd, char *c) 493 static void yahoo_process_cookie(struct yahoo_data *yd, char *c)
494 { 494 {
495 if (c[0] == 'Y') { 495 if (c[0] == 'Y') {
496 if (yd->cookie_y) 496 g_free(yd->cookie_y);
497 g_free(yd->cookie_y);
498 yd->cookie_y = _getcookie(c); 497 yd->cookie_y = _getcookie(c);
499 } else if (c[0] == 'T') { 498 } else if (c[0] == 'T') {
500 if (yd->cookie_t) 499 g_free(yd->cookie_t);
501 g_free(yd->cookie_t);
502 yd->cookie_t = _getcookie(c); 500 yd->cookie_t = _getcookie(c);
501 } else if (c[0] == 'C') {
502 g_free(yd->cookie_c);
503 yd->cookie_c = _getcookie(c);
503 } else 504 } else
504 purple_debug_info("yahoo", "Ignoring unrecognized cookie '%c'\n", c[0]); 505 purple_debug_info("yahoo", "Ignoring unrecognized cookie '%c'\n", c[0]);
505 } 506 }
506 507
507 static void yahoo_process_list_15(PurpleConnection *gc, struct yahoo_packet *pkt) 508 static void yahoo_process_list_15(PurpleConnection *gc, struct yahoo_packet *pkt)
2430 case YAHOO_SERVICE_AVATAR_UPDATE: 2431 case YAHOO_SERVICE_AVATAR_UPDATE:
2431 yahoo_process_avatar_update(gc, pkt); 2432 yahoo_process_avatar_update(gc, pkt);
2432 break; 2433 break;
2433 case YAHOO_SERVICE_AUDIBLE: 2434 case YAHOO_SERVICE_AUDIBLE:
2434 yahoo_process_audible(gc, pkt); 2435 yahoo_process_audible(gc, pkt);
2436 break;
2437 case YAHOO_SERVICE_Y7_FILETRANSFER:
2438 yahoo_process_y7_filetransfer(gc, pkt);
2439 break;
2440 case YAHOO_SERVICE_Y7_FILETRANSFER_INFO:
2441 yahoo_process_y7_filetransfer_info(gc, pkt);
2435 break; 2442 break;
2436 default: 2443 default:
2437 purple_debug(PURPLE_DEBUG_ERROR, "yahoo", 2444 purple_debug(PURPLE_DEBUG_ERROR, "yahoo",
2438 "Unhandled service 0x%02x\n", pkt->service); 2445 "Unhandled service 0x%02x\n", pkt->service);
2439 break; 2446 break;
3010 g_hash_table_destroy(yd->imvironments); 3017 g_hash_table_destroy(yd->imvironments);
3011 g_free(yd->chat_name); 3018 g_free(yd->chat_name);
3012 3019
3013 g_free(yd->cookie_y); 3020 g_free(yd->cookie_y);
3014 g_free(yd->cookie_t); 3021 g_free(yd->cookie_t);
3022 g_free(yd->cookie_c);
3015 3023
3016 if (yd->txhandler) 3024 if (yd->txhandler)
3017 purple_input_remove(yd->txhandler); 3025 purple_input_remove(yd->txhandler);
3018 3026
3019 purple_circ_buffer_destroy(yd->txbuf); 3027 purple_circ_buffer_destroy(yd->txbuf);