brasero r787 - in trunk: . src



Author: philippr
Date: Fri May  2 10:16:55 2008
New Revision: 787
URL: http://svn.gnome.org/viewvc/brasero?rev=787&view=rev

Log:
	Don\'t pass on pseudo URI for new fake folders to vfs object
	Allows to load project where there is such a directory.

	* src/brasero-data-disc.c (brasero_data_disc_project_loaded_cb):
	* src/brasero-data-project.c (brasero_data_project_add_node_real),
	(brasero_data_project_node_loaded),
	(brasero_data_project_directory_node_loaded),
	(brasero_data_project_add_path):
	* src/brasero-data-vfs.c (brasero_data_vfs_load_directory):

Modified:
   trunk/ChangeLog
   trunk/src/brasero-data-disc.c
   trunk/src/brasero-data-project.c
   trunk/src/brasero-data-vfs.c

Modified: trunk/src/brasero-data-disc.c
==============================================================================
--- trunk/src/brasero-data-disc.c	(original)
+++ trunk/src/brasero-data-disc.c	Fri May  2 10:16:55 2008
@@ -703,7 +703,7 @@
 						   (gdouble) (priv->loading - loading) / (gdouble) priv->loading);
 		return;
 	}
-
+g_warning ("REACHED\n");
 	priv->loading = 0;
 	if (priv->load_errors) {
 		brasero_disc_message_remove_buttons (BRASERO_DISC_MESSAGE (priv->message));

Modified: trunk/src/brasero-data-project.c
==============================================================================
--- trunk/src/brasero-data-project.c	(original)
+++ trunk/src/brasero-data-project.c	Fri May  2 10:16:55 2008
@@ -68,6 +68,8 @@
 	GHashTable *joliet;
 
 	guint ref_count;
+
+	/* This is a counter for the number of files to be loaded */
 	guint loading;
 };
 
@@ -1491,7 +1493,7 @@
 	/* Signal that something has changed in the tree */
 	klass = BRASERO_DATA_PROJECT_GET_CLASS (self);
 	if (klass->node_added)
-		klass->node_added (self, node, uri);
+		klass->node_added (self, node, uri != NEW_FOLDER? uri:NULL);
 }
 
 void
@@ -1650,22 +1652,15 @@
 	BraseroDataProjectPrivate *priv;
 
 	priv = BRASERO_DATA_PROJECT_PRIVATE (self);
-
 	type = g_file_info_get_file_type (info);
 	if (node->is_tmp_parent) {
-		priv->loading --;
-		g_signal_emit (self,
-			       brasero_data_project_signals [PROJECT_LOADED_SIGNAL],
-			       0,
-			       priv->loading);
-
 		/* we must make sure that this is really a directory */
 		if (type != G_FILE_TYPE_DIRECTORY) {
 			BraseroURINode *graft;
 
 			/* it isn't a directory so it won't be loaded but turned
 			 * into a fake one. Decrement the number of loading */
-			priv->loading --;
+			priv->loading -= 2;
 			g_signal_emit (self,
 				       brasero_data_project_signals [PROJECT_LOADED_SIGNAL],
 				       0,
@@ -1691,6 +1686,12 @@
 			return;
 		}
 
+		priv->loading --;
+		g_signal_emit (self,
+			       brasero_data_project_signals [PROJECT_LOADED_SIGNAL],
+			       0,
+			       priv->loading);
+
 		/* That's indeed a directory. It's going to be loaded. */
 	}
 	else if (priv->loading && node->is_grafted) {
@@ -1881,7 +1882,7 @@
 	BraseroDataProjectPrivate *priv;
 
 	priv = BRASERO_DATA_PROJECT_PRIVATE (self);
-
+g_warning ("DIRECTORY %s\n", BRASERO_FILE_NODE_NAME (parent));
 	/* Mostly useful at project load time. */
 	if (priv->loading) {
 		if (parent->is_grafted || parent->is_tmp_parent) {
@@ -2550,7 +2551,6 @@
 						    graft,
 						    uri);
 	}
-
 	return folders;
 }
 

Modified: trunk/src/brasero-data-vfs.c
==============================================================================
--- trunk/src/brasero-data-vfs.c	(original)
+++ trunk/src/brasero-data-vfs.c	Fri May  2 10:16:55 2008
@@ -529,7 +529,7 @@
 	GSList *nodes;
 
 	priv = BRASERO_DATA_VFS_PRIVATE (self);
-
+g_warning ("REA %s\n", uri);
 	/* Start exploration of directory*/
 	reference = brasero_data_project_reference_new (BRASERO_DATA_PROJECT (self), node);
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]