Cygwin support contributed by Stefan Ondrejicka <ondrej@idata.sk>.
[platform/upstream/glib.git] / ghash.c
diff --git a/ghash.c b/ghash.c
index d35df18..8ac9ff2 100644 (file)
--- a/ghash.c
+++ b/ghash.c
  * MT safe
  */
 
+#ifdef HAVE_CONFIG_H
+#include <config.h>
+#endif
+
 #include "glib.h"
 
 
@@ -169,16 +173,15 @@ g_hash_table_insert (GHashTable *hash_table,
     }
 }
 
-void
-g_hash_table_remove (GHashTable             *hash_table,
-                    gconstpointer    key)
+gboolean
+g_hash_table_remove (GHashTable          *hash_table,
+                    gconstpointer key)
 {
   GHashNode **node, *dest;
   
-  g_return_if_fail (hash_table != NULL);
+  g_return_val_if_fail (hash_table != NULL, FALSE);
   
   node = g_hash_table_lookup_node (hash_table, key);
-
   if (*node)
     {
       dest = *node;
@@ -187,7 +190,11 @@ g_hash_table_remove (GHashTable         *hash_table,
       hash_table->nnodes--;
   
       g_hash_table_resize (hash_table);
+
+      return TRUE;
     }
+
+  return FALSE;
 }
 
 gboolean