[glib/glib-2-28] GHash: Avoid nonatomic access to the reference count



commit 8bf68cc66114a2a115a6bc2653bb927145f44397
Author: Matthias Clasen <mclasen redhat com>
Date:   Sat May 28 21:40:12 2011 -0400

    GHash: Avoid nonatomic access to the reference count
    
    Not really necessary to constantly double-check the ref
    count, anyway.

 glib/ghash.c |    4 ----
 1 files changed, 0 insertions(+), 4 deletions(-)
---
diff --git a/glib/ghash.c b/glib/ghash.c
index 4323068..7b623e0 100644
--- a/glib/ghash.c
+++ b/glib/ghash.c
@@ -826,7 +826,6 @@ GHashTable*
 g_hash_table_ref (GHashTable *hash_table)
 {
   g_return_val_if_fail (hash_table != NULL, NULL);
-  g_return_val_if_fail (hash_table->ref_count > 0, hash_table);
 
   g_atomic_int_add (&hash_table->ref_count, 1);
   return hash_table;
@@ -847,7 +846,6 @@ void
 g_hash_table_unref (GHashTable *hash_table)
 {
   g_return_if_fail (hash_table != NULL);
-  g_return_if_fail (hash_table->ref_count > 0);
 
   if (g_atomic_int_exchange_and_add (&hash_table->ref_count, -1) - 1 == 0)
     {
@@ -872,7 +870,6 @@ void
 g_hash_table_destroy (GHashTable *hash_table)
 {
   g_return_if_fail (hash_table != NULL);
-  g_return_if_fail (hash_table->ref_count > 0);
 
   g_hash_table_remove_all (hash_table);
   g_hash_table_unref (hash_table);
@@ -977,7 +974,6 @@ g_hash_table_insert_internal (GHashTable *hash_table,
   guint old_hash;
 
   g_return_if_fail (hash_table != NULL);
-  g_return_if_fail (hash_table->ref_count > 0);
 
   node_index = g_hash_table_lookup_node_for_insertion (hash_table, key, &key_hash);
   node = &hash_table->nodes [node_index];



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