# HG changeset patch # User Nathan Walp # Date 1050867426 0 # Node ID dec87634bcb1c97a20b344b4357444abd759021c # Parent 4dbaa8772781fac235cd3194fb95a0cb36b044a4 [gaim-migrate @ 5549] fix some ticker stuff. i'm about sick of the ticker now. committer: Tailor Script diff -r 4dbaa8772781 -r dec87634bcb1 plugins/ticker/ticker.c --- a/plugins/ticker/ticker.c Sun Apr 20 19:14:19 2003 +0000 +++ b/plugins/ticker/ticker.c Sun Apr 20 19:37:06 2003 +0000 @@ -196,9 +196,23 @@ void signoff_cb(struct gaim_connection *gc) { if (!connections) { + while(tickerbuds) { + g_free(tickerbuds->data); + tickerbuds = g_list_delete_link(tickerbuds, tickerbuds); + } gtk_widget_destroy(tickerwindow); tickerwindow = NULL; ticker = NULL; + } else { + GList *t = tickerbuds; + while(t) { + TickerData *td = t->data; + t = t->next; + if(td->buddy->account == gc->account) { + g_free(td); + tickerbuds = g_list_remove(tickerbuds, td); + } + } } } @@ -206,6 +220,8 @@ struct buddy *b = gaim_find_buddy(gc->account, who); buddy_ticker_remove_buddy(b); + if(!tickerbuds) + gtk_widget_hide(tickerwindow); } void away_cb(struct gaim_connection *gc, char *who) { @@ -243,6 +259,10 @@ } G_MODULE_EXPORT void gaim_plugin_remove() { + while(tickerbuds) { + g_free(tickerbuds->data); + g_list_delete_link(tickerbuds, tickerbuds); + } gtk_widget_destroy(tickerwindow); }