pidgin/pidgin

Parents 6b658d1458c8
Children 00908349dea9
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