Port internal GStaticRecMutex users to GRecMutex

This commit is contained in:
Ryan Lortie 2011-09-21 14:37:34 -04:00
parent ad187e3a9b
commit b6140c2f89
4 changed files with 46 additions and 46 deletions

View File

@ -52,7 +52,7 @@ static void g_union_volume_monitor_remove_monitor (GUnionVolumeMonitor *union_mo
#define g_union_volume_monitor_get_type _g_union_volume_monitor_get_type
G_DEFINE_TYPE (GUnionVolumeMonitor, g_union_volume_monitor, G_TYPE_VOLUME_MONITOR);
static GStaticRecMutex the_volume_monitor_mutex = G_STATIC_REC_MUTEX_INIT;
static GRecMutex the_volume_monitor_mutex = G_REC_MUTEX_INIT;
static GUnionVolumeMonitor *the_volume_monitor = NULL;
@ -84,7 +84,7 @@ g_union_volume_monitor_dispose (GObject *object)
monitor = G_UNION_VOLUME_MONITOR (object);
g_static_rec_mutex_lock (&the_volume_monitor_mutex);
g_rec_mutex_lock (&the_volume_monitor_mutex);
the_volume_monitor = NULL;
for (l = monitor->monitors; l != NULL; l = l->next)
@ -93,7 +93,7 @@ g_union_volume_monitor_dispose (GObject *object)
g_object_run_dispose (G_OBJECT (child_monitor));
}
g_static_rec_mutex_unlock (&the_volume_monitor_mutex);
g_rec_mutex_unlock (&the_volume_monitor_mutex);
G_OBJECT_CLASS (g_union_volume_monitor_parent_class)->dispose (object);
}
@ -110,7 +110,7 @@ get_mounts (GVolumeMonitor *volume_monitor)
res = NULL;
g_static_rec_mutex_lock (&the_volume_monitor_mutex);
g_rec_mutex_lock (&the_volume_monitor_mutex);
for (l = monitor->monitors; l != NULL; l = l->next)
{
@ -119,7 +119,7 @@ get_mounts (GVolumeMonitor *volume_monitor)
res = g_list_concat (res, g_volume_monitor_get_mounts (child_monitor));
}
g_static_rec_mutex_unlock (&the_volume_monitor_mutex);
g_rec_mutex_unlock (&the_volume_monitor_mutex);
return res;
}
@ -136,7 +136,7 @@ get_volumes (GVolumeMonitor *volume_monitor)
res = NULL;
g_static_rec_mutex_lock (&the_volume_monitor_mutex);
g_rec_mutex_lock (&the_volume_monitor_mutex);
for (l = monitor->monitors; l != NULL; l = l->next)
{
@ -145,7 +145,7 @@ get_volumes (GVolumeMonitor *volume_monitor)
res = g_list_concat (res, g_volume_monitor_get_volumes (child_monitor));
}
g_static_rec_mutex_unlock (&the_volume_monitor_mutex);
g_rec_mutex_unlock (&the_volume_monitor_mutex);
return res;
}
@ -162,7 +162,7 @@ get_connected_drives (GVolumeMonitor *volume_monitor)
res = NULL;
g_static_rec_mutex_lock (&the_volume_monitor_mutex);
g_rec_mutex_lock (&the_volume_monitor_mutex);
for (l = monitor->monitors; l != NULL; l = l->next)
{
@ -171,7 +171,7 @@ get_connected_drives (GVolumeMonitor *volume_monitor)
res = g_list_concat (res, g_volume_monitor_get_connected_drives (child_monitor));
}
g_static_rec_mutex_unlock (&the_volume_monitor_mutex);
g_rec_mutex_unlock (&the_volume_monitor_mutex);
return res;
}
@ -188,7 +188,7 @@ get_volume_for_uuid (GVolumeMonitor *volume_monitor, const char *uuid)
volume = NULL;
g_static_rec_mutex_lock (&the_volume_monitor_mutex);
g_rec_mutex_lock (&the_volume_monitor_mutex);
for (l = monitor->monitors; l != NULL; l = l->next)
{
@ -200,7 +200,7 @@ get_volume_for_uuid (GVolumeMonitor *volume_monitor, const char *uuid)
}
g_static_rec_mutex_unlock (&the_volume_monitor_mutex);
g_rec_mutex_unlock (&the_volume_monitor_mutex);
return volume;
}
@ -217,7 +217,7 @@ get_mount_for_uuid (GVolumeMonitor *volume_monitor, const char *uuid)
mount = NULL;
g_static_rec_mutex_lock (&the_volume_monitor_mutex);
g_rec_mutex_lock (&the_volume_monitor_mutex);
for (l = monitor->monitors; l != NULL; l = l->next)
{
@ -229,7 +229,7 @@ get_mount_for_uuid (GVolumeMonitor *volume_monitor, const char *uuid)
}
g_static_rec_mutex_unlock (&the_volume_monitor_mutex);
g_rec_mutex_unlock (&the_volume_monitor_mutex);
return mount;
}
@ -563,7 +563,7 @@ g_volume_monitor_get (void)
{
GVolumeMonitor *vm;
g_static_rec_mutex_lock (&the_volume_monitor_mutex);
g_rec_mutex_lock (&the_volume_monitor_mutex);
if (the_volume_monitor)
vm = G_VOLUME_MONITOR (g_object_ref (the_volume_monitor));
@ -574,7 +574,7 @@ g_volume_monitor_get (void)
vm = G_VOLUME_MONITOR (the_volume_monitor);
}
g_static_rec_mutex_unlock (&the_volume_monitor_mutex);
g_rec_mutex_unlock (&the_volume_monitor_mutex);
return vm;
}
@ -594,9 +594,9 @@ _g_mount_get_for_mount_path (const gchar *mount_path,
if (klass->get_mount_for_mount_path)
{
g_static_rec_mutex_lock (&the_volume_monitor_mutex);
g_rec_mutex_lock (&the_volume_monitor_mutex);
mount = klass->get_mount_for_mount_path (mount_path, cancellable);
g_static_rec_mutex_unlock (&the_volume_monitor_mutex);
g_rec_mutex_unlock (&the_volume_monitor_mutex);
}
/* TODO: How do we know this succeeded? Keep in mind that the native
@ -669,7 +669,7 @@ g_volume_monitor_adopt_orphan_mount (GMount *mount)
volume = NULL;
g_static_rec_mutex_lock (&the_volume_monitor_mutex);
g_rec_mutex_lock (&the_volume_monitor_mutex);
for (l = the_volume_monitor->monitors; l != NULL; l = l->next)
{
@ -684,7 +684,7 @@ g_volume_monitor_adopt_orphan_mount (GMount *mount)
}
}
g_static_rec_mutex_unlock (&the_volume_monitor_mutex);
g_rec_mutex_unlock (&the_volume_monitor_mutex);
return volume;
}

View File

@ -709,7 +709,7 @@ g_variant_type_info_member_info (GVariantTypeInfo *info,
}
/* == new/ref/unref == */
static GStaticRecMutex g_variant_type_info_lock = G_STATIC_REC_MUTEX_INIT;
static GRecMutex g_variant_type_info_lock = G_REC_MUTEX_INIT;
static GHashTable *g_variant_type_info_table;
/* < private >
@ -742,7 +742,7 @@ g_variant_type_info_get (const GVariantType *type)
type_string = g_variant_type_dup_string (type);
g_static_rec_mutex_lock (&g_variant_type_info_lock);
g_rec_mutex_lock (&g_variant_type_info_lock);
if (g_variant_type_info_table == NULL)
g_variant_type_info_table = g_hash_table_new (g_str_hash,
@ -773,7 +773,7 @@ g_variant_type_info_get (const GVariantType *type)
else
g_variant_type_info_ref (info);
g_static_rec_mutex_unlock (&g_variant_type_info_lock);
g_rec_mutex_unlock (&g_variant_type_info_lock);
g_variant_type_info_check (info, 0);
g_free (type_string);
@ -834,7 +834,7 @@ g_variant_type_info_unref (GVariantTypeInfo *info)
{
ContainerInfo *container = (ContainerInfo *) info;
g_static_rec_mutex_lock (&g_variant_type_info_lock);
g_rec_mutex_lock (&g_variant_type_info_lock);
if (g_atomic_int_dec_and_test (&container->ref_count))
{
g_hash_table_remove (g_variant_type_info_table,
@ -844,7 +844,7 @@ g_variant_type_info_unref (GVariantTypeInfo *info)
g_hash_table_unref (g_variant_type_info_table);
g_variant_type_info_table = NULL;
}
g_static_rec_mutex_unlock (&g_variant_type_info_lock);
g_rec_mutex_unlock (&g_variant_type_info_lock);
g_free (container->type_string);
@ -858,7 +858,7 @@ g_variant_type_info_unref (GVariantTypeInfo *info)
g_assert_not_reached ();
}
else
g_static_rec_mutex_unlock (&g_variant_type_info_lock);
g_rec_mutex_unlock (&g_variant_type_info_lock);
}
}

View File

@ -326,7 +326,7 @@ _g_module_debug_init (void)
module_debug_initialized = TRUE;
}
static GStaticRecMutex g_module_global_lock = G_STATIC_REC_MUTEX_INIT;
static GRecMutex g_module_global_lock = G_REC_MUTEX_INIT;
GModule*
g_module_open (const gchar *file_name,
@ -338,7 +338,7 @@ g_module_open (const gchar *file_name,
SUPPORT_OR_RETURN (NULL);
g_static_rec_mutex_lock (&g_module_global_lock);
g_rec_mutex_lock (&g_module_global_lock);
if (G_UNLIKELY (!module_debug_initialized))
_g_module_debug_init ();
@ -368,7 +368,7 @@ g_module_open (const gchar *file_name,
else
main_module->ref_count++;
g_static_rec_mutex_unlock (&g_module_global_lock);
g_rec_mutex_unlock (&g_module_global_lock);
return main_module;
}
@ -378,7 +378,7 @@ g_module_open (const gchar *file_name,
{
module->ref_count++;
g_static_rec_mutex_unlock (&g_module_global_lock);
g_rec_mutex_unlock (&g_module_global_lock);
return module;
}
@ -461,7 +461,7 @@ g_module_open (const gchar *file_name,
module->ref_count++;
g_module_set_error (NULL);
g_static_rec_mutex_unlock (&g_module_global_lock);
g_rec_mutex_unlock (&g_module_global_lock);
return module;
}
@ -511,7 +511,7 @@ g_module_open (const gchar *file_name,
(module_debug_flags & G_MODULE_DEBUG_RESIDENT_MODULES))
g_module_make_resident (module);
g_static_rec_mutex_unlock (&g_module_global_lock);
g_rec_mutex_unlock (&g_module_global_lock);
return module;
}
@ -541,7 +541,7 @@ g_module_close (GModule *module)
g_return_val_if_fail (module != NULL, FALSE);
g_return_val_if_fail (module->ref_count > 0, FALSE);
g_static_rec_mutex_lock (&g_module_global_lock);
g_rec_mutex_lock (&g_module_global_lock);
module->ref_count--;
@ -585,7 +585,7 @@ g_module_close (GModule *module)
g_free (module);
}
g_static_rec_mutex_unlock (&g_module_global_lock);
g_rec_mutex_unlock (&g_module_global_lock);
return g_module_error() == NULL;
}
@ -618,7 +618,7 @@ g_module_symbol (GModule *module,
g_return_val_if_fail (symbol_name != NULL, FALSE);
g_return_val_if_fail (symbol != NULL, FALSE);
g_static_rec_mutex_lock (&g_module_global_lock);
g_rec_mutex_lock (&g_module_global_lock);
#ifdef G_MODULE_NEED_USCORE
{
@ -643,7 +643,7 @@ g_module_symbol (GModule *module,
*symbol = NULL;
}
g_static_rec_mutex_unlock (&g_module_global_lock);
g_rec_mutex_unlock (&g_module_global_lock);
return !module_error;
}

View File

@ -369,7 +369,7 @@ typedef struct {
/* --- variables --- */
static GStaticRWLock type_rw_lock = G_STATIC_RW_LOCK_INIT;
static GStaticRecMutex class_init_rec_mutex = G_STATIC_REC_MUTEX_INIT;
static GRecMutex class_init_rec_mutex = G_REC_MUTEX_INIT;
static guint static_n_class_cache_funcs = 0;
static ClassCacheFunc *static_class_cache_funcs = NULL;
static guint static_n_iface_check_funcs = 0;
@ -2416,11 +2416,11 @@ type_data_unref_U (TypeNode *node,
g_assert (current > 0);
g_static_rec_mutex_lock (&class_init_rec_mutex); /* required locking order: 1) class_init_rec_mutex, 2) type_rw_lock */
g_rec_mutex_lock (&class_init_rec_mutex); /* required locking order: 1) class_init_rec_mutex, 2) type_rw_lock */
G_WRITE_LOCK (&type_rw_lock);
type_data_last_unref_Wm (node, uncached);
G_WRITE_UNLOCK (&type_rw_lock);
g_static_rec_mutex_unlock (&class_init_rec_mutex);
g_rec_mutex_unlock (&class_init_rec_mutex);
return;
}
} while (!g_atomic_int_compare_and_exchange ((int *) &node->ref_count, current, current - 1));
@ -2804,7 +2804,7 @@ g_type_add_interface_static (GType instance_type,
* class initialized, however this function is rarely enough called to take
* the simple route and always acquire class_init_rec_mutex.
*/
g_static_rec_mutex_lock (&class_init_rec_mutex); /* required locking order: 1) class_init_rec_mutex, 2) type_rw_lock */
g_rec_mutex_lock (&class_init_rec_mutex); /* required locking order: 1) class_init_rec_mutex, 2) type_rw_lock */
G_WRITE_LOCK (&type_rw_lock);
if (check_add_interface_L (instance_type, interface_type))
{
@ -2814,7 +2814,7 @@ g_type_add_interface_static (GType instance_type,
type_add_interface_Wm (node, iface, info, NULL);
}
G_WRITE_UNLOCK (&type_rw_lock);
g_static_rec_mutex_unlock (&class_init_rec_mutex);
g_rec_mutex_unlock (&class_init_rec_mutex);
}
/**
@ -2842,7 +2842,7 @@ g_type_add_interface_dynamic (GType instance_type,
return;
/* see comment in g_type_add_interface_static() about class_init_rec_mutex */
g_static_rec_mutex_lock (&class_init_rec_mutex); /* required locking order: 1) class_init_rec_mutex, 2) type_rw_lock */
g_rec_mutex_lock (&class_init_rec_mutex); /* required locking order: 1) class_init_rec_mutex, 2) type_rw_lock */
G_WRITE_LOCK (&type_rw_lock);
if (check_add_interface_L (instance_type, interface_type))
{
@ -2850,7 +2850,7 @@ g_type_add_interface_dynamic (GType instance_type,
type_add_interface_Wm (node, iface, NULL, plugin);
}
G_WRITE_UNLOCK (&type_rw_lock);
g_static_rec_mutex_unlock (&class_init_rec_mutex);
g_rec_mutex_unlock (&class_init_rec_mutex);
}
@ -2897,7 +2897,7 @@ g_type_class_ref (GType type)
* node->data->class.init_state == INITIALIZED, because any
* concurrently running initialization was guarded by class_init_rec_mutex.
*/
g_static_rec_mutex_lock (&class_init_rec_mutex); /* required locking order: 1) class_init_rec_mutex, 2) type_rw_lock */
g_rec_mutex_lock (&class_init_rec_mutex); /* required locking order: 1) class_init_rec_mutex, 2) type_rw_lock */
/* we need an initialized parent class for initializing derived classes */
ptype = NODE_PARENT_TYPE (node);
@ -2916,7 +2916,7 @@ g_type_class_ref (GType type)
if (pclass)
g_type_class_unref (pclass);
g_static_rec_mutex_unlock (&class_init_rec_mutex);
g_rec_mutex_unlock (&class_init_rec_mutex);
return node->data->class.class;
}
@ -3188,12 +3188,12 @@ g_type_default_interface_ref (GType g_type)
if (!node->data || !node->data->iface.dflt_vtable)
{
G_WRITE_UNLOCK (&type_rw_lock);
g_static_rec_mutex_lock (&class_init_rec_mutex); /* required locking order: 1) class_init_rec_mutex, 2) type_rw_lock */
g_rec_mutex_lock (&class_init_rec_mutex); /* required locking order: 1) class_init_rec_mutex, 2) type_rw_lock */
G_WRITE_LOCK (&type_rw_lock);
node = lookup_type_node_I (g_type);
type_data_ref_Wm (node);
type_iface_ensure_dflt_vtable_Wm (node);
g_static_rec_mutex_unlock (&class_init_rec_mutex);
g_rec_mutex_unlock (&class_init_rec_mutex);
}
else
type_data_ref_Wm (node); /* ref_count >= 1 already */