Mercurial > pidgin.yaz
comparison libpurple/protocols/irc/msgs.c @ 22822:f09acca60066
Patch from sadrul to fix IRC servers which neglect to send RPL_LISTSTART
(321) before sending their channel list with RPL_LIST (322).
Fixes #2225
author | Ethan Blanton <elb@pidgin.im> |
---|---|
date | Mon, 05 May 2008 14:56:36 +0000 |
parents | 1fbc49b46e09 |
children | f1dfc0d70d19 |
comparison
equal
deleted
inserted
replaced
22821:61e0bcbf31ab | 22822:f09acca60066 |
---|---|
419 PurpleRoomlistRoom *room; | 419 PurpleRoomlistRoom *room; |
420 char *topic; | 420 char *topic; |
421 | 421 |
422 if (!args[0] || !args[1] || !args[2] || !args[3]) | 422 if (!args[0] || !args[1] || !args[2] || !args[3]) |
423 return; | 423 return; |
424 | |
425 if (!purple_roomlist_get_in_progress(irc->roomlist)) { | |
426 purple_debug_warning("irc", "Buggy server didn't send RPL_LISTSTART.\n"); | |
427 purple_roomlist_set_in_progress(irc->roomlist, TRUE); | |
428 } | |
424 | 429 |
425 room = purple_roomlist_room_new(PURPLE_ROOMLIST_ROOMTYPE_ROOM, args[1], NULL); | 430 room = purple_roomlist_room_new(PURPLE_ROOMLIST_ROOMTYPE_ROOM, args[1], NULL); |
426 purple_roomlist_room_add_field(irc->roomlist, room, args[1]); | 431 purple_roomlist_room_add_field(irc->roomlist, room, args[1]); |
427 purple_roomlist_room_add_field(irc->roomlist, room, GINT_TO_POINTER(strtol(args[2], NULL, 10))); | 432 purple_roomlist_room_add_field(irc->roomlist, room, GINT_TO_POINTER(strtol(args[2], NULL, 10))); |
428 topic = irc_mirc2txt(args[3]); | 433 topic = irc_mirc2txt(args[3]); |