Thu, 21 Nov 2019 20:40:08 -0600
Clean up some reference counting, doc comments and a build tweak
--- a/pidgin/meson.build Fri Nov 15 00:23:41 2019 -0600 +++ b/pidgin/meson.build Thu Nov 21 20:40:08 2019 -0600 @@ -198,7 +198,7 @@ filebase : 'pidgin-3', subdirs : 'pidgin-3', libraries : [libpidgin], - requires : ['gtk+-3.0', 'purple-3', 'talkatu'], + requires : ['gtk+-3.0', 'purple-3', 'talkatu', 'gplugin-gtk'], variables : ['plugindir=${libdir}/pidgin-@0@'.format(purple_major_version)]) if INSTALL_I18N @@ -228,7 +228,7 @@ gnome.generate_gir(libpidgin, sources : introspection_sources, - includes : ['GObject-2.0', 'Gtk-3.0', libpurple_gir[0], talkatu_gir, gplugin_gir], + includes : ['GObject-2.0', 'Gtk-3.0', libpurple_gir[0], talkatu_gir, gplugin_gir, gplugin_gtk_gir], namespace : 'Pidgin', symbol_prefix : 'pidgin', identifier_prefix : 'Pidgin',
--- a/pidgin/pidginplugininfo.h Fri Nov 15 00:23:41 2019 -0600 +++ b/pidgin/pidginplugininfo.h Thu Nov 21 20:40:08 2019 -0600 @@ -51,6 +51,8 @@ * See purple_plugin_info_new(). * * Returns: A new #PidginPluginInfo instance. + * + * Since: 3.0.0 */ PidginPluginInfo *pidgin_plugin_info_new(const char *first_property, ...) G_GNUC_NULL_TERMINATED;
--- a/pidgin/pidginpluginsdialog.c Fri Nov 15 00:23:41 2019 -0600 +++ b/pidgin/pidginpluginsdialog.c Thu Nov 21 20:40:08 2019 -0600 @@ -169,6 +169,8 @@ GTK_WIDGET(dialog->configure_plugin_button), pidgin_plugins_dialog_plugin_has_config(plugin) ); + + g_object_unref(G_OBJECT(plugin)); } static void @@ -202,6 +204,7 @@ info = PURPLE_PLUGIN_INFO(ginfo); if(purple_plugin_info_get_ui_data(info)) { + g_object_unref(G_OBJECT(plugin)); return; } @@ -218,8 +221,9 @@ ui_data->u.frame.pref_frame = pref_frame_cb(plugin); } - if (pref_request_cb) + if (pref_request_cb) { prefs_count++; + } if (prefs_count > 1) { purple_debug_warning("gtkplugin", @@ -251,6 +255,7 @@ "Failed to display prefs frame"); g_free(ui_data); purple_plugin_info_set_ui_data(info, NULL); + g_object_unref(G_OBJECT(plugin)); return; } gtk_widget_set_vexpand(box, TRUE); @@ -282,6 +287,7 @@ GPLUGIN_PLUGIN_INFO(info)))); gtk_widget_show_all(pdialog); } + g_object_unref(G_OBJECT(plugin)); } /******************************************************************************
--- a/pidgin/pidginpluginsdialog.h Fri Nov 15 00:23:41 2019 -0600 +++ b/pidgin/pidginpluginsdialog.h Thu Nov 21 20:40:08 2019 -0600 @@ -38,6 +38,15 @@ G_DECLARE_FINAL_TYPE(PidginPluginsDialog, pidgin_plugins_dialog, PIDGIN, PLUGINS_DIALOG, GtkDialog) +/** + * pidgin_plugins_dialog_new: + * + * Creates a new instance of #PidginPluginsDialog. + * + * Returns: (transfer full): The new #PidginPluginsDialog. + * + * Since: 3.0.0 + */ GtkWidget *pidgin_plugins_dialog_new(void); G_END_DECLS