aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilmer van der Gaast <wilmer@gaast.net>2006-10-21 23:40:06 +0200
committerWilmer van der Gaast <wilmer@gaast.net>2006-10-21 23:40:06 +0200
commit66f783fa6365fefe7ba449e6409b4dc1359b155b (patch)
tree50f2e6c2f7f92a24cc6612515a155a152320ee26
parent4b0d8055fe3fc08cdaa7696f1c4af1e0e471a67e (diff)
Complete fix (or mostly a work-around) for nested calls to signoff(). (Can
happen when the IRC connection to the user is broken, a write() to it eventually fails, which triggers an irc_kill() which, in turn, will call signoff() for all accounts.)
-rw-r--r--protocols/nogaim.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/protocols/nogaim.c b/protocols/nogaim.c
index 36461b32..3e9d7c07 100644
--- a/protocols/nogaim.c
+++ b/protocols/nogaim.c
@@ -283,12 +283,12 @@ void signoff( struct gaim_connection *gc )
place to catch them. */
if( gc->flags & OPT_LOGGING_OUT )
return;
+ else
+ gc->flags |= OPT_LOGGING_OUT;
serv_got_crap( gc, "Signing off.." );
b_event_remove( gc->keepalive );
- gc->flags |= OPT_LOGGING_OUT;
-
gc->keepalive = 0;
gc->acc->prpl->close( gc );
b_event_remove( gc->inpa );