[maemo-commits] [maemo-commits] r14136 - in projects/haf/trunk/hildon-desktop: . src

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Thu Sep 27 11:05:22 EEST 2007
Author: jobi
Date: 2007-09-27 11:05:21 +0300 (Thu, 27 Sep 2007)
New Revision: 14136

Modified:
   projects/haf/trunk/hildon-desktop/ChangeLog
   projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c
Log:

2007-09-27 Johan Bilien  <johan.bilien at nokia.com>

	* src/hd-applications-menu.c (hd_applications_menu_activate_category):
	fixed the leak of a GList



Modified: projects/haf/trunk/hildon-desktop/ChangeLog
===================================================================
--- projects/haf/trunk/hildon-desktop/ChangeLog	2007-09-27 07:43:33 UTC (rev 14135)
+++ projects/haf/trunk/hildon-desktop/ChangeLog	2007-09-27 08:05:21 UTC (rev 14136)
@@ -1,5 +1,10 @@
 2007-09-27 Johan Bilien  <johan.bilien at nokia.com>
 
+	* src/hd-applications-menu.c (hd_applications_menu_activate_category):
+	fixed the leak of a GList
+
+2007-09-27 Johan Bilien  <johan.bilien at nokia.com>
+
 	* src/hd-desktop.c (hd_desktop_plugin_list_from_conf): free
 	the KeyFile in case of error.
 

Modified: projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c
===================================================================
--- projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c	2007-09-27 07:43:33 UTC (rev 14135)
+++ projects/haf/trunk/hildon-desktop/src/hd-applications-menu.c	2007-09-27 08:05:21 UTC (rev 14136)
@@ -376,16 +376,17 @@
 hd_applications_menu_activate_category (GtkMenuItem *item, HDApplicationsMenu *button)
 {
   static GtkMenuItem *last_selected_item = NULL;
+  GtkWidget *sub_item_widget = NULL;
 
-  GList *sub_items, *i;
-
-  sub_items = hildon_desktop_popup_menu_get_children 
-	  (button->priv->menu_applications);
-  
   if (last_selected_item != item)
   {
+    GList *sub_items, *i;
     last_selected_item = item;
-	  
+
+    sub_items = hildon_desktop_popup_menu_get_children
+        (button->priv->menu_applications);
+
+
     for (i = g_list_first (sub_items); i; i = i->next)
     {
       GtkMenuItem *child = (GtkMenuItem *) i->data;
@@ -396,21 +397,23 @@
     g_list_free (sub_items);
 
     sub_items = (GList *) g_object_get_data (G_OBJECT (item),
-          	                             CATEGORY_SUB_ITEMS);
+                                             CATEGORY_SUB_ITEMS);
 
     hildon_desktop_popup_menu_replace_items (button->priv->menu_applications, 
 		    		  	     sub_items);
+
+    sub_item_widget = sub_items->data;
   }
   else
   {
     button->priv->focus_applications = TRUE;
   }
 
-  if (button->priv->focus_applications && sub_items != NULL &&
-      GTK_WIDGET_IS_SENSITIVE (sub_items->data))
+  if (button->priv->focus_applications && sub_item_widget != NULL &&
+      GTK_WIDGET_IS_SENSITIVE (sub_item_widget))
   {
     hildon_desktop_popup_menu_select_first_item (button->priv->menu_applications);
-    gtk_widget_grab_focus (GTK_WIDGET (sub_items->data));
+    gtk_widget_grab_focus (sub_item_widget);
     gtk_widget_queue_draw (GTK_WIDGET (item));
   }
   else


More information about the maemo-commits mailing list