Pidgin freezes when XMPP server silently disappears

Elliott Sales de Andrade quantum.analyst at gmail.com
Sun Jul 20 21:51:35 EDT 2008


On Sun, Jul 20, 2008 at 9:42 AM, Bron Gondwana <brong at fastmail.fm> wrote:
> I'm currently fiddling with Djabberd, and restarting the server
> quite frequently as I test out new code.
>
> Each time, Pidgin freezes for quite a few seconds (haven't
> calculated exactly) - the interface just plain freezes, nothing
> works, the buddy list doesn't redraw.
>
> It looks to me like something is failing to check for disconnection
> and blindly leaving the POLLIN on an fd (14 and 15 in this case - I
> have two different accounts on the same testing server) after
> consuming (or failing to consume) an EOF notification on that socket.
>

There was a recent commit made that should fix this:
http://developer.pidgin.im/viewmtn/revision/info/1d533cebad7c0dbda8ec8ebee1334d27dcae5f9c

Changelog:
Only check for EAGAIN if read returned less than 0. This fixes a bug
where the recv callback function would get called continuously if the
server closed our connection and errno happened to be set to EAGAIN.




More information about the Devel mailing list