Comment 0 for bug 212662

Revision history for this message
In , Will Thompson (wjt) wrote :

Sometimes, after a connection error of some form occurs, libpurple segfaults in connection.c:purple_connection_disconnect_cb(), which is called via an idle callback. In particular, purple_account_get_password(account) fails because account is invalid.

I believe this is because haze destroys the account on an idle callback set in response to ConnUiOps::disconnected, but does not remove the gc->disconnect_timeout callback.

Either haze should cancel that callback (which seems broken), or should destroy the account in response to a later signal.