1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
|
Index: id-utils-4.6.28/libidu/idu-hash.c
===================================================================
--- id-utils-4.6.28.orig/libidu/idu-hash.c
+++ id-utils-4.6.28/libidu/idu-hash.c
@@ -60,6 +60,15 @@ hash_init (struct hash_table* ht, unsign
ht->ht_compare = hash_cmp;
}
+static void *
+hash_insert (struct hash_table* ht, void *item)
+{
+ void **slot = hash_find_slot (ht, item);
+ void *old_item = slot ? *slot : 0;
+ hash_insert_at (ht, item, slot);
+ return ((HASH_VACANT (old_item)) ? 0 : old_item);
+}
+
/* Load an array of items into `ht'. */
void
@@ -121,15 +130,6 @@ hash_find_item (struct hash_table* ht, v
}
void *
-hash_insert (struct hash_table* ht, void *item)
-{
- void **slot = hash_find_slot (ht, item);
- void *old_item = slot ? *slot : 0;
- hash_insert_at (ht, item, slot);
- return ((HASH_VACANT (old_item)) ? 0 : old_item);
-}
-
-void *
hash_insert_at (struct hash_table* ht, void *item, void const *slot)
{
void *old_item = *(void **) slot;
@@ -171,6 +171,7 @@ hash_delete_at (struct hash_table* ht, v
return 0;
}
+#if 0 // unused
void
hash_free_items (struct hash_table* ht)
{
@@ -215,6 +216,7 @@ hash_free (struct hash_table* ht, int fr
ht->ht_vec = 0;
ht->ht_capacity = 0;
}
+#endif
void
hash_map (struct hash_table *ht, hash_map_func_t map)
Index: id-utils-4.6.28/libidu/idu-hash.h
===================================================================
--- id-utils-4.6.28.orig/libidu/idu-hash.h
+++ id-utils-4.6.28/libidu/idu-hash.h
@@ -49,14 +49,13 @@ extern void hash_load (struct hash_table
unsigned long cardinality, unsigned long size);
extern void **hash_find_slot (struct hash_table *ht, void const *key);
extern void *hash_find_item (struct hash_table *ht, void const *key);
-extern void *hash_insert (struct hash_table *ht, void *item);
extern void *hash_insert_at (struct hash_table *ht, void *item,
void const *slot);
extern void *hash_delete (struct hash_table *ht, void const *item);
extern void *hash_delete_at (struct hash_table *ht, void const *slot);
-extern void hash_delete_items (struct hash_table *ht);
-extern void hash_free_items (struct hash_table *ht);
-extern void hash_free (struct hash_table *ht, int free_items);
+//extern void hash_delete_items (struct hash_table *ht);
+//extern void hash_free_items (struct hash_table *ht);
+//extern void hash_free (struct hash_table *ht, int free_items);
extern void hash_map (struct hash_table *ht, hash_map_func_t map);
extern void hash_print_stats (struct hash_table const *ht, FILE *out_FILE);
extern void **hash_dump (struct hash_table const *ht, void **vector_0,
|