[maemo-commits] [maemo-commits] r15210 - in projects/haf/trunk/hildon-fm: . debian hildon-fm

From: subversion at stage.maemo.org subversion at stage.maemo.org
Date: Wed Feb 20 17:07:19 EET 2008
Author: marivoll
Date: 2008-02-20 17:07:15 +0200 (Wed, 20 Feb 2008)
New Revision: 15210

Modified:
   projects/haf/trunk/hildon-fm/ChangeLog
   projects/haf/trunk/hildon-fm/debian/changelog
   projects/haf/trunk/hildon-fm/hildon-fm/hildon-file-system-model.c
Log:
	* hildon-fm/hildon-file-system-model.c (handle_finished_node): Do
	not kick nodes that are in the process of being linked (N76271).


Modified: projects/haf/trunk/hildon-fm/ChangeLog
===================================================================
--- projects/haf/trunk/hildon-fm/ChangeLog	2008-02-20 14:59:51 UTC (rev 15209)
+++ projects/haf/trunk/hildon-fm/ChangeLog	2008-02-20 15:07:15 UTC (rev 15210)
@@ -1,5 +1,8 @@
 2008-02-20  Marius Vollmer  <marius.vollmer at nokia.com>
 
+	* hildon-fm/hildon-file-system-model.c (handle_finished_node): Do
+	not kick nodes that are in the process of being linked (N76271).
+
 	* hildon-fm/hildon-file-chooser-dialog.c (sync_extensions_combo):
 	Do not change the extensions combobox selection if there's already
 	a valid extension selected. (N76380)

Modified: projects/haf/trunk/hildon-fm/debian/changelog
===================================================================
--- projects/haf/trunk/hildon-fm/debian/changelog	2008-02-20 14:59:51 UTC (rev 15209)
+++ projects/haf/trunk/hildon-fm/debian/changelog	2008-02-20 15:07:15 UTC (rev 15210)
@@ -1,6 +1,6 @@
 libhildonfm (1:2.0.1~unreleased) unstable; urgency=low
 
-  * Fixes: NB#76517, NB#79427, NB#76380.
+  * Fixes: NB#76517, NB#79427, NB#76380, NB#76271.
 
  -- Marius Vollmer <marius.vollmer at nokia.com>  Wed, 20 Feb 2008 16:42:40 +0200
 

Modified: projects/haf/trunk/hildon-fm/hildon-fm/hildon-file-system-model.c
===================================================================
--- projects/haf/trunk/hildon-fm/hildon-fm/hildon-file-system-model.c	2008-02-20 14:59:51 UTC (rev 15209)
+++ projects/haf/trunk/hildon-fm/hildon-fm/hildon-file-system-model.c	2008-02-20 15:07:15 UTC (rev 15210)
@@ -88,9 +88,10 @@
     HildonFileSystemModel *model;
     HildonThumbnailFactoryHandle thumbnail_handle;
     time_t load_time;
-    gboolean present_flag : 1;
-    gboolean available : 1; /* Set by code */
-    gboolean accessed : 1;  /* Replaces old gateway_accessed from model */
+    guint present_flag : 1;
+    guint available : 1; /* Set by code */
+    guint accessed : 1;  /* Replaces old gateway_accessed from model */
+    guint linking : 1; /* whether it's being linked */
     GError *error;      /* Set if cannot get children */
     gchar *thumb_title, *thumb_author;
     HildonFileSystemSpecialLocation *location;
@@ -238,7 +239,8 @@
       /* We do not want to ever kick permanent special locations. */
       
       if (model_node->present_flag
-	  || (model_node->location && model_node->location->permanent))
+	  || (model_node->location && model_node->location->permanent) ||
+	      model_node->linking)
 	child_node = g_node_next_sibling(child_node);
       else
 	child_node = hildon_file_system_model_kick_node(child_node, model);
@@ -1487,6 +1489,7 @@
   model_node->get_folder_handle = NULL;
   model_node->folder = folder;
   model_node->error = error? g_error_copy (error) : NULL;
+  model_node->linking = FALSE;
 
   if (folder == NULL)
     {
@@ -1595,6 +1598,7 @@
   g_assert(HILDON_IS_FILE_SYSTEM_MODEL(model));
 
   model_node->load_time = time(NULL);
+  model_node->linking = TRUE;
 
   ULOG_INFO_F("%s", (char *) path);
 
@@ -1642,6 +1646,7 @@
     {
       ULOG_ERR_F ("Failed to create monitor for path %s", (char *) path);
       DBG ("Failed to create monitor for path %s", (char *) path);
+      model_node->linking = FALSE;
       free_handle_data (handle_data);
       return FALSE;
     }


More information about the maemo-commits mailing list