--- a/pidgin/gtkblist.c Mon Nov 04 09:58:05 2019 +0300 +++ b/pidgin/gtkblist.c Mon Nov 04 10:00:14 2019 +0300 @@ -3073,9 +3073,16 @@ g_free(td); } -void pidgin_blist_tooltip_destroy() +static void +pidgin_blist_destroy_tooltip_data(void) { g_list_free_full(gtkblist->tooltipdata, (GDestroyNotify)tooltip_data_free); + gtkblist->tooltipdata = NULL; +} + +void pidgin_blist_tooltip_destroy() +{ + pidgin_blist_destroy_tooltip_data(); pidgin_tooltip_destroy(); } @@ -3107,7 +3114,7 @@ if (gtkblist->tooltipdata) { gtkblist->tipwindow = NULL; - g_list_free_full(gtkblist->tooltipdata, (GDestroyNotify)tooltip_data_free); + pidgin_blist_destroy_tooltip_data(); } gtkblist->tipwindow = widget; @@ -3296,7 +3303,7 @@ if (gtkblist->tooltipdata) { gtkblist->tipwindow = NULL; - g_list_free_full(gtkblist->tooltipdata, (GDestroyNotify)tooltip_data_free); + pidgin_blist_destroy_tooltip_data(); } gtk_tree_model_get_iter(GTK_TREE_MODEL(gtkblist->treemodel), &iter, path);