Mercurial > pidgin
comparison src/protocols/yahoo/yahoochat.c @ 9329:d42f3e4fd7ad
[gaim-migrate @ 10137]
We were ignoring an extra packet the server is sending now on joining
a room, which has extra members in it. This makes us process it. We
do so one at a time though, so it prints a has joined message for them,
which sucks but oh well.
This also fixes a "bug" where we were getting confused and thinking
keys were values and values were keys. But the reason we were getting
confused is pretty weird. I think the server was intentionally trying
to confuse us this way, to hide extra data from older clients.
committer: Tailor Script <tailor@pidgin.im>
author | Tim Ringenbach <marv@pidgin.im> |
---|---|
date | Sun, 20 Jun 2004 19:18:42 +0000 |
parents | 9171e528d7e5 |
children | 3aa848ccf986 |
comparison
equal
deleted
inserted
replaced
9328:33e6b2b92cfe | 9329:d42f3e4fd7ad |
---|---|
396 case 113: /* bitmask */ | 396 case 113: /* bitmask */ |
397 break; | 397 break; |
398 } | 398 } |
399 } | 399 } |
400 | 400 |
401 if (!room) | 401 |
402 return; | 402 if (room && yd->chat_name && gaim_utf8_strcasecmp(room, yd->chat_name)) |
403 | |
404 if (yd->chat_name && gaim_utf8_strcasecmp(room, yd->chat_name)) | |
405 yahoo_chat_leave(gc, room, | 403 yahoo_chat_leave(gc, room, |
406 gaim_connection_get_display_name(gc), FALSE); | 404 gaim_connection_get_display_name(gc), FALSE); |
407 | 405 |
408 c = gaim_find_chat(gc, YAHOO_CHAT_ID); | 406 c = gaim_find_chat(gc, YAHOO_CHAT_ID); |
409 | 407 |
410 if ((!c || gaim_conv_chat_has_left(GAIM_CONV_CHAT(c))) && members && | 408 if (room && (!c || gaim_conv_chat_has_left(GAIM_CONV_CHAT(c))) && members && |
411 ((g_list_length(members) > 1) || | 409 ((g_list_length(members) > 1) || |
412 !g_ascii_strcasecmp(members->data, gaim_connection_get_display_name(gc)))) { | 410 !g_ascii_strcasecmp(members->data, gaim_connection_get_display_name(gc)))) { |
413 if (c && gaim_conv_chat_has_left(GAIM_CONV_CHAT(c))) { | 411 if (c && gaim_conv_chat_has_left(GAIM_CONV_CHAT(c))) { |
414 /* this might be a hack, but oh well, it should nicely */ | 412 /* this might be a hack, but oh well, it should nicely */ |
415 char *tmpmsg; | 413 char *tmpmsg; |