Avoid Freezing, when g_datalist is called recursivly.

1999-10-15  Sebastian Wilhelmi  <wilhelmi@ira.uka.de>

	* gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
	is called recursivly.
This commit is contained in:
Sebastian Wilhelmi 1999-10-15 12:00:22 +00:00 committed by Sebastian Wilhelmi
parent 5636dc8433
commit 615be16749
10 changed files with 50 additions and 2 deletions

View File

@ -1,3 +1,8 @@
1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
is called recursivly.
Thu Oct 7 12:28:27 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* Released GLib 1.2.6

View File

@ -1,3 +1,8 @@
1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
is called recursivly.
Thu Oct 7 12:28:27 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* Released GLib 1.2.6

View File

@ -1,3 +1,8 @@
1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
is called recursivly.
Thu Oct 7 12:28:27 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* Released GLib 1.2.6

View File

@ -1,3 +1,8 @@
1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
is called recursivly.
Thu Oct 7 12:28:27 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* Released GLib 1.2.6

View File

@ -1,3 +1,8 @@
1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
is called recursivly.
Thu Oct 7 12:28:27 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* Released GLib 1.2.6

View File

@ -1,3 +1,8 @@
1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
is called recursivly.
Thu Oct 7 12:28:27 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* Released GLib 1.2.6

View File

@ -1,3 +1,8 @@
1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
is called recursivly.
Thu Oct 7 12:28:27 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* Released GLib 1.2.6

View File

@ -1,3 +1,8 @@
1999-10-15 Sebastian Wilhelmi <wilhelmi@ira.uka.de>
* gdataset.c (g_datalist_clear_i): Avoid Freezing, when g_datalist
is called recursivly.
Thu Oct 7 12:28:27 CDT 1999 Shawn T. Amundson <amundson@gtk.org>
* Released GLib 1.2.6

View File

@ -110,7 +110,11 @@ g_datalist_clear_i (GData **datalist)
list = prev->next;
if (prev->destroy_func)
prev->destroy_func (prev->data);
{
G_UNLOCK (g_dataset_global);
prev->destroy_func (prev->data);
G_LOCK (g_dataset_global);
}
if (g_data_cache_length < G_DATA_CACHE_MAX)
{

View File

@ -110,7 +110,11 @@ g_datalist_clear_i (GData **datalist)
list = prev->next;
if (prev->destroy_func)
prev->destroy_func (prev->data);
{
G_UNLOCK (g_dataset_global);
prev->destroy_func (prev->data);
G_LOCK (g_dataset_global);
}
if (g_data_cache_length < G_DATA_CACHE_MAX)
{