One thing that's always itched me about gaim, and adium for that matter,
and a number of other clients (although, seems less now), is that when
you leave a yahoo chatroom, it results in the yahoo servers sending out
two 'user has left room' messages.
I've tried a couple of times to fix it, but gave up. After getting
annoyed enough again, I took another look at native, and it would seem
it's the server that sends us the CHAT_EXIT, not the other way round.
I've banged up a patch that comments out the offending code, and have
tried a few test scenarios to ensure that it works properly. Packet
captures looked the same to me, in amongst the other noise, and it
doesn't seem to cause problems I experienced with previous attempted
fixes (not being able to rejoin rooms, etc.)
I'm eager for Yahoo users to try this patch out on gaim2cvs and let me
know if you experience problems.