pidgin/gtkplugin.c

changeset 22608
252962fae8b4
parent 22533
7e1e39d5db7e
child 22781
c85c7a3609dc
equal deleted inserted replaced
22607:6e34f691fe57 22608:252962fae8b4
79 79
80 frame = plugin->info->prefs_info->get_plugin_pref_frame(plugin); 80 frame = plugin->info->prefs_info->get_plugin_pref_frame(plugin);
81 81
82 config = pidgin_plugin_pref_create_frame(frame); 82 config = pidgin_plugin_pref_create_frame(frame);
83 83
84 /* XXX According to bug #1407047 this broke saving pluging preferences, I'll look at fixing it correctly later. 84 plugin->info->prefs_info->frame = frame;
85 purple_plugin_pref_frame_destroy(frame);
86 */
87 } 85 }
88 86
89 return config; 87 return config;
90 } 88 }
91 89
210 if (g_hash_table_size(plugin_pref_dialogs) == 0) { 208 if (g_hash_table_size(plugin_pref_dialogs) == 0) {
211 g_hash_table_destroy(plugin_pref_dialogs); 209 g_hash_table_destroy(plugin_pref_dialogs);
212 plugin_pref_dialogs = NULL; 210 plugin_pref_dialogs = NULL;
213 } 211 }
214 gtk_widget_destroy(d); 212 gtk_widget_destroy(d);
213
214 if (plug->info->prefs_info && plug->info->prefs_info->frame) {
215 purple_plugin_pref_frame_destroy(plug->info->prefs_info->frame);
216 plug->info->prefs_info->frame = NULL;
217 }
218
215 break; 219 break;
216 } 220 }
217 } 221 }
218 222
219 static void plugin_unload_confirm_cb(gpointer *data) 223 static void plugin_unload_confirm_cb(gpointer *data)

mercurial