Mercurial > pidgin.yaz
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); |