brasero r1398 - in trunk: . src
- From: philippr svn gnome org
- To: svn-commits-list gnome org
- Subject: brasero r1398 - in trunk: . src
- Date: Sun, 19 Oct 2008 13:55:19 +0000 (UTC)
Author: philippr
Date: Sun Oct 19 13:55:19 2008
New Revision: 1398
URL: http://svn.gnome.org/viewvc/brasero?rev=1398&view=rev
Log:
Fix a problem with infinite loading and potential crash when the same
uri was requested to be loaded at the same time
* src/brasero-data-vfs.c (brasero_data_vfs_load_mime):
Modified:
trunk/ChangeLog
trunk/src/brasero-data-vfs.c
Modified: trunk/src/brasero-data-vfs.c
==============================================================================
--- trunk/src/brasero-data-vfs.c (original)
+++ trunk/src/brasero-data-vfs.c Sun Oct 19 13:55:19 2008
@@ -947,18 +947,19 @@
nodes = g_hash_table_lookup (priv->loading, uri);
if (nodes) {
gchar *registered;
+ GSList *iter;
registered = brasero_utils_register_string (uri);
g_free (uri);
- for (; nodes; nodes = nodes->next) {
+ for (iter = nodes; iter; iter = iter->next) {
guint reference;
BraseroFileNode *ref_node;
- reference = GPOINTER_TO_INT (nodes->data);
+ reference = GPOINTER_TO_INT (iter->data);
ref_node = brasero_data_project_reference_get (BRASERO_DATA_PROJECT (self), reference);
if (ref_node == node) {
- /* 1sk for a higher priority */
+ /* Ask for a higher priority */
brasero_io_find_urgent (priv->io,
priv->load_uri,
brasero_data_vfs_increase_priority_cb,
@@ -971,7 +972,7 @@
/* It's loading, wait for the results */
reference = brasero_data_project_reference_new (BRASERO_DATA_PROJECT (self), node);
nodes = g_slist_prepend (nodes, GINT_TO_POINTER (reference));
- g_hash_table_insert (priv->loading, (gchar *) uri, nodes);
+ g_hash_table_insert (priv->loading, registered, nodes);
/* Yet, ask for a higher priority */
brasero_io_find_urgent (priv->io,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]