[Xfce4-commits] r29074 - in libxfce4menu/trunk: . libxfce4menu

Nick Schermer nick at xfce.org
Fri Jan 2 12:30:34 CET 2009


Author: nick
Date: 2009-01-02 11:30:34 +0000 (Fri, 02 Jan 2009)
New Revision: 29074

Modified:
   libxfce4menu/trunk/ChangeLog
   libxfce4menu/trunk/NEWS
   libxfce4menu/trunk/libxfce4menu/xfce-menu-item-cache.c
   libxfce4menu/trunk/libxfce4menu/xfce-menu-separator.c
Log:
	* libxfce4menu/xfce-menu-item-cache.c,
	  libxfce4menu/xfce-menu-separator.c: Add weak pointer to 
	  XfceMenuItemCache and XfceMenuSeparator so you can init and shutdown
	  the library multiple times without running into trouble.
	* NEWS: Update.

Modified: libxfce4menu/trunk/ChangeLog
===================================================================
--- libxfce4menu/trunk/ChangeLog	2008-12-31 12:52:40 UTC (rev 29073)
+++ libxfce4menu/trunk/ChangeLog	2009-01-02 11:30:34 UTC (rev 29074)
@@ -1,3 +1,11 @@
+2009-01-02	Nick Schermer <nick at xfce.org>
+
+	* libxfce4menu/xfce-menu-item-cache.c,
+	  libxfce4menu/xfce-menu-separator.c: Add weak pointer to 
+	  XfceMenuItemCache and XfceMenuSeparator so you can init and shutdown
+	  the library multiple times without running into trouble.
+	* NEWS: Update.
+
 2008-12-06	Jannis Pohlmann <jannis at xfce.org>
 
 	* configure.in.in: Re-add svn version tag.

Modified: libxfce4menu/trunk/NEWS
===================================================================
--- libxfce4menu/trunk/NEWS	2008-12-31 12:52:40 UTC (rev 29073)
+++ libxfce4menu/trunk/NEWS	2009-01-02 11:30:34 UTC (rev 29074)
@@ -1,3 +1,8 @@
+4.5.93
+======
+- Add weak pointers to the XfceMenuItemCache and XfceMenuSeparator objects
+  to you can run xfce_menu_init() and xfce_menu_shutdown() multiple times.
+
 4.5.92
 ======
 - Translations: ca, da, ku, nb_NO, sq, tr.

Modified: libxfce4menu/trunk/libxfce4menu/xfce-menu-item-cache.c
===================================================================
--- libxfce4menu/trunk/libxfce4menu/xfce-menu-item-cache.c	2008-12-31 12:52:40 UTC (rev 29073)
+++ libxfce4menu/trunk/libxfce4menu/xfce-menu-item-cache.c	2009-01-02 11:30:34 UTC (rev 29074)
@@ -80,7 +80,10 @@
 _xfce_menu_item_cache_init (void)
 {
   if (G_LIKELY (_xfce_menu_item_cache == NULL))
-    _xfce_menu_item_cache = g_object_new (XFCE_TYPE_MENU_ITEM_CACHE, NULL);
+    {
+      _xfce_menu_item_cache = g_object_new (XFCE_TYPE_MENU_ITEM_CACHE, NULL);
+      g_object_add_weak_pointer (G_OBJECT (_xfce_menu_item_cache), (gpointer) &_xfce_menu_item_cache);
+    }
 }
 
 
@@ -90,6 +93,7 @@
 {
   if (G_LIKELY (_xfce_menu_item_cache != NULL))
     g_object_unref (G_OBJECT (_xfce_menu_item_cache));
+      
 }
 
 

Modified: libxfce4menu/trunk/libxfce4menu/xfce-menu-separator.c
===================================================================
--- libxfce4menu/trunk/libxfce4menu/xfce-menu-separator.c	2008-12-31 12:52:40 UTC (rev 29073)
+++ libxfce4menu/trunk/libxfce4menu/xfce-menu-separator.c	2009-01-02 11:30:34 UTC (rev 29074)
@@ -45,7 +45,10 @@
 _xfce_menu_separator_init (void)
 {
   if (G_LIKELY (_xfce_menu_separator == NULL))
-    _xfce_menu_separator = g_object_new (XFCE_TYPE_MENU_SEPARATOR, NULL);
+    {
+      _xfce_menu_separator = g_object_new (XFCE_TYPE_MENU_SEPARATOR, NULL);
+      g_object_add_weak_pointer (G_OBJECT (_xfce_menu_separator), (gpointer) &_xfce_menu_separator);
+    }
 }
 
 




More information about the Xfce4-commits mailing list