diff plugins/idle.c @ 12826:74eb10cead7f

[gaim-migrate @ 15174] Fix a crash in the idle maker which can be reproduced by 1. Set an account idle 2. Sign off the account 3. Unset idle for all accounts committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Wed, 11 Jan 2006 06:20:32 +0000
parents 54ba44abf356
children 2bf82fdddf5e
line wrap: on
line diff
--- a/plugins/idle.c	Wed Jan 11 06:16:33 2006 +0000
+++ b/plugins/idle.c	Wed Jan 11 06:20:32 2006 +0000
@@ -299,10 +299,21 @@
 	actions
 };
 
+static void
+signing_off_cb(GaimConnection *gc, void *data)
+{
+	GaimAccount *account;
+
+	account = gaim_connection_get_account(gc);
+	idled_accts = g_list_remove(idled_accts, account);
+}
 
 static void
 init_plugin(GaimPlugin *plugin)
 {
+	gaim_signal_connect(gaim_connections_get_handle(), "signing-off",
+						plugin,
+						GAIM_CALLBACK(signing_off_cb), NULL);
 }