qulogic/gplugin

Fix possible reference counting error.
feature/new-glib-stuff
2019-01-24, Elliott Sales de Andrade
4a6dee515ca2
Parents 41b3b3816922
Children 5502aeffdc42
Fix possible reference counting error.

You need to unref the old object after ref'ing the new one in case they're the
same object.
--- a/gplugin-gtk/gplugin-gtk-plugin-info.c Thu Jan 24 19:41:07 2019 -0500
+++ b/gplugin-gtk/gplugin-gtk-plugin-info.c Thu Jan 24 23:38:53 2019 -0500
@@ -301,20 +301,19 @@
GPluginPlugin *plugin)
{
GPluginGtkPluginInfoPrivate *priv = NULL;
+ GPluginPlugin *orig_plugin;
g_return_if_fail(GPLUGIN_GTK_IS_PLUGIN_INFO(info));
priv = gplugin_gtk_plugin_info_get_instance_private(info);
- if(GPLUGIN_IS_PLUGIN(priv->plugin)) {
- g_object_unref(G_OBJECT(priv->plugin));
- }
-
+ orig_plugin = priv->plugin;
if(GPLUGIN_IS_PLUGIN(plugin)) {
priv->plugin = GPLUGIN_PLUGIN(g_object_ref(G_OBJECT(plugin)));
} else {
priv->plugin = NULL;
}
+ g_object_unref(G_OBJECT(orig_plugin));
_gplugin_gtk_plugin_info_refresh(priv, plugin);
}