Moved dispose() code from PurplePluginInfo and PurpleProtocol to finalize() soc.2013.gobjectification.plugins

Tue, 01 Oct 2013 17:39:32 +0530

author
Ankit Vani <a@nevitus.org>
date
Tue, 01 Oct 2013 17:39:32 +0530
branch
soc.2013.gobjectification.plugins
changeset 36847
58597c72e6ac
parent 36846
d6e55ebf2820
child 36848
7fafdda14844

Moved dispose() code from PurplePluginInfo and PurpleProtocol to finalize()

libpurple/plugins.c file | annotate | diff | comparison | revisions
libpurple/protocol.c file | annotate | diff | comparison | revisions
--- a/libpurple/plugins.c	Tue Oct 01 17:35:00 2013 +0530
+++ b/libpurple/plugins.c	Tue Oct 01 17:39:32 2013 +0530
@@ -401,15 +401,6 @@
 	}
 }
 
-/* GObject dispose function */
-static void
-purple_plugin_info_dispose(GObject *object)
-{
-	PURPLE_DBUS_UNREGISTER_POINTER(object);
-
-	parent_class->dispose(object);
-}
-
 /* GObject finalize function */
 static void
 purple_plugin_info_finalize(GObject *object)
@@ -419,6 +410,8 @@
 	g_free(priv->ui_requirement);
 	g_free(priv->error);
 
+	PURPLE_DBUS_UNREGISTER_POINTER(object);
+
 	parent_class->finalize(object);
 }
 
@@ -432,7 +425,6 @@
 	g_type_class_add_private(klass, sizeof(PurplePluginInfoPrivate));
 
 	obj_class->constructed = purple_plugin_info_constructed;
-	obj_class->dispose     = purple_plugin_info_dispose;
 	obj_class->finalize    = purple_plugin_info_finalize;
 
 	/* Setup properties */
--- a/libpurple/protocol.c	Tue Oct 01 17:35:00 2013 +0530
+++ b/libpurple/protocol.c	Tue Oct 01 17:39:32 2013 +0530
@@ -144,7 +144,7 @@
 }
 
 static void
-purple_protocol_dispose(GObject *object)
+purple_protocol_finalize(GObject *object)
 {
 	PurpleProtocol *protocol = PURPLE_PROTOCOL(object);
 	GList *accounts, *l;
@@ -170,20 +170,12 @@
 
 	purple_prefs_disconnect_by_handle(protocol);
 
-	PURPLE_DBUS_UNREGISTER_POINTER(protocol);
-
-	parent_class->dispose(object);
-}
-
-static void
-purple_protocol_finalize(GObject *object)
-{
-	PurpleProtocol *protocol = PURPLE_PROTOCOL(object);
-
 	user_splits_free(protocol);
 	protocol_options_free(protocol);
 	icon_spec_free(protocol);
 
+	PURPLE_DBUS_UNREGISTER_POINTER(protocol);
+
 	parent_class->finalize(object);
 }
 
@@ -194,7 +186,6 @@
 
 	parent_class = g_type_class_peek_parent(klass);
 
-	obj_class->dispose  = purple_protocol_dispose;
 	obj_class->finalize = purple_protocol_finalize;
 }
 

mercurial