diff -r 6e34f691fe57 -r 252962fae8b4 pidgin/gtkplugin.c --- a/pidgin/gtkplugin.c Thu Mar 13 01:24:51 2008 +0000 +++ b/pidgin/gtkplugin.c Thu Mar 13 01:34:09 2008 +0000 @@ -81,9 +81,7 @@ config = pidgin_plugin_pref_create_frame(frame); - /* XXX According to bug #1407047 this broke saving pluging preferences, I'll look at fixing it correctly later. - purple_plugin_pref_frame_destroy(frame); - */ + plugin->info->prefs_info->frame = frame; } return config; @@ -212,6 +210,12 @@ plugin_pref_dialogs = NULL; } gtk_widget_destroy(d); + + if (plug->info->prefs_info && plug->info->prefs_info->frame) { + purple_plugin_pref_frame_destroy(plug->info->prefs_info->frame); + plug->info->prefs_info->frame = NULL; + } + break; } }