From: Tim Janik Date: Thu, 26 Nov 1998 00:42:14 +0000 (+0000) Subject: reverted the g_hash_table_set_key_freefunc() addition, since it's to X-Git-Tag: PRE_CLEANUP~16 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=3a14f25fdfa715f1a79b74bcf3916885053ff307;p=platform%2Fupstream%2Fglib.git reverted the g_hash_table_set_key_freefunc() addition, since it's to Thu Nov 26 01:36:20 1998 Tim Janik * glib.h: * ghash.c: reverted the g_hash_table_set_key_freefunc() addition, since it's to specialized and needs to be resolved in a generic fashion. --- diff --git a/ChangeLog b/ChangeLog index 52f25c5..c570ab4 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,10 @@ +Thu Nov 26 01:36:20 1998 Tim Janik + + * glib.h: + * ghash.c: reverted the g_hash_table_set_key_freefunc() addition, + since it's to specialized and needs to be resolved in a generic + fashion. + Tue Nov 24 18:57:59 PST 1998 Manish Singh * applied glib-tml-981120-0, change log appended below. diff --git a/ChangeLog.pre-2-0 b/ChangeLog.pre-2-0 index 52f25c5..c570ab4 100644 --- a/ChangeLog.pre-2-0 +++ b/ChangeLog.pre-2-0 @@ -1,3 +1,10 @@ +Thu Nov 26 01:36:20 1998 Tim Janik + + * glib.h: + * ghash.c: reverted the g_hash_table_set_key_freefunc() addition, + since it's to specialized and needs to be resolved in a generic + fashion. + Tue Nov 24 18:57:59 PST 1998 Manish Singh * applied glib-tml-981120-0, change log appended below. diff --git a/ChangeLog.pre-2-10 b/ChangeLog.pre-2-10 index 52f25c5..c570ab4 100644 --- a/ChangeLog.pre-2-10 +++ b/ChangeLog.pre-2-10 @@ -1,3 +1,10 @@ +Thu Nov 26 01:36:20 1998 Tim Janik + + * glib.h: + * ghash.c: reverted the g_hash_table_set_key_freefunc() addition, + since it's to specialized and needs to be resolved in a generic + fashion. + Tue Nov 24 18:57:59 PST 1998 Manish Singh * applied glib-tml-981120-0, change log appended below. diff --git a/ChangeLog.pre-2-12 b/ChangeLog.pre-2-12 index 52f25c5..c570ab4 100644 --- a/ChangeLog.pre-2-12 +++ b/ChangeLog.pre-2-12 @@ -1,3 +1,10 @@ +Thu Nov 26 01:36:20 1998 Tim Janik + + * glib.h: + * ghash.c: reverted the g_hash_table_set_key_freefunc() addition, + since it's to specialized and needs to be resolved in a generic + fashion. + Tue Nov 24 18:57:59 PST 1998 Manish Singh * applied glib-tml-981120-0, change log appended below. diff --git a/ChangeLog.pre-2-2 b/ChangeLog.pre-2-2 index 52f25c5..c570ab4 100644 --- a/ChangeLog.pre-2-2 +++ b/ChangeLog.pre-2-2 @@ -1,3 +1,10 @@ +Thu Nov 26 01:36:20 1998 Tim Janik + + * glib.h: + * ghash.c: reverted the g_hash_table_set_key_freefunc() addition, + since it's to specialized and needs to be resolved in a generic + fashion. + Tue Nov 24 18:57:59 PST 1998 Manish Singh * applied glib-tml-981120-0, change log appended below. diff --git a/ChangeLog.pre-2-4 b/ChangeLog.pre-2-4 index 52f25c5..c570ab4 100644 --- a/ChangeLog.pre-2-4 +++ b/ChangeLog.pre-2-4 @@ -1,3 +1,10 @@ +Thu Nov 26 01:36:20 1998 Tim Janik + + * glib.h: + * ghash.c: reverted the g_hash_table_set_key_freefunc() addition, + since it's to specialized and needs to be resolved in a generic + fashion. + Tue Nov 24 18:57:59 PST 1998 Manish Singh * applied glib-tml-981120-0, change log appended below. diff --git a/ChangeLog.pre-2-6 b/ChangeLog.pre-2-6 index 52f25c5..c570ab4 100644 --- a/ChangeLog.pre-2-6 +++ b/ChangeLog.pre-2-6 @@ -1,3 +1,10 @@ +Thu Nov 26 01:36:20 1998 Tim Janik + + * glib.h: + * ghash.c: reverted the g_hash_table_set_key_freefunc() addition, + since it's to specialized and needs to be resolved in a generic + fashion. + Tue Nov 24 18:57:59 PST 1998 Manish Singh * applied glib-tml-981120-0, change log appended below. diff --git a/ChangeLog.pre-2-8 b/ChangeLog.pre-2-8 index 52f25c5..c570ab4 100644 --- a/ChangeLog.pre-2-8 +++ b/ChangeLog.pre-2-8 @@ -1,3 +1,10 @@ +Thu Nov 26 01:36:20 1998 Tim Janik + + * glib.h: + * ghash.c: reverted the g_hash_table_set_key_freefunc() addition, + since it's to specialized and needs to be resolved in a generic + fashion. + Tue Nov 24 18:57:59 PST 1998 Manish Singh * applied glib-tml-981120-0, change log appended below. diff --git a/ghash.c b/ghash.c index 6fa142b..0ff5a24 100644 --- a/ghash.c +++ b/ghash.c @@ -40,7 +40,6 @@ struct _GHashTable GHashNode **nodes; GHashFunc hash_func; GCompareFunc key_compare_func; - GFreeFunc *free_func; }; @@ -49,10 +48,8 @@ static GHashNode** g_hash_table_lookup_node (GHashTable *hash_table, gconstpointer key); static GHashNode* g_hash_node_new (gpointer key, gpointer value); -static void g_hash_node_destroy (GHashNode *hash_node, - GFreeFunc *free_func); -static void g_hash_nodes_destroy (GHashNode *hash_node, - GFreeFunc *free_func); +static void g_hash_node_destroy (GHashNode *hash_node); +static void g_hash_nodes_destroy (GHashNode *hash_node); static GMemChunk *node_mem_chunk = NULL; @@ -73,7 +70,6 @@ g_hash_table_new (GHashFunc hash_func, hash_table->hash_func = hash_func ? hash_func : g_direct_hash; hash_table->key_compare_func = key_compare_func; hash_table->nodes = g_new (GHashNode*, hash_table->size); - hash_table->free_func = NULL; for (i = 0; i < hash_table->size; i++) hash_table->nodes[i] = NULL; @@ -89,7 +85,7 @@ g_hash_table_destroy (GHashTable *hash_table) g_return_if_fail (hash_table != NULL); for (i = 0; i < hash_table->size; i++) - g_hash_nodes_destroy (hash_table->nodes[i], hash_table->free_func); + g_hash_nodes_destroy (hash_table->nodes[i]); g_free (hash_table->nodes); g_free (hash_table); @@ -174,7 +170,7 @@ g_hash_table_remove (GHashTable *hash_table, { dest = *node; (*node) = dest->next; - g_hash_node_destroy (dest, hash_table->free_func); + g_hash_node_destroy (dest); hash_table->nnodes--; } @@ -253,13 +249,13 @@ g_hash_table_foreach_remove (GHashTable *hash_table, if (prev) { prev->next = node->next; - g_hash_node_destroy (node, hash_table->free_func); + g_hash_node_destroy (node); node = prev; } else { hash_table->nodes[i] = node->next; - g_hash_node_destroy (node, hash_table->free_func); + g_hash_node_destroy (node); goto restart; } } @@ -297,12 +293,6 @@ g_hash_table_size (GHashTable *hash_table) return hash_table->nnodes; } -void -g_hash_table_set_key_freefunc (GHashTable *hash_table, GFreeFunc *free_func) -{ - hash_table->free_func = free_func; -} - static void g_hash_table_resize (GHashTable *hash_table) { @@ -371,15 +361,14 @@ g_hash_node_new (gpointer key, } static void -g_hash_node_destroy (GHashNode *hash_node, GFreeFunc *free_func) +g_hash_node_destroy (GHashNode *hash_node) { - if (free_func) (*free_func)(hash_node->key); hash_node->next = node_free_list; node_free_list = hash_node; } static void -g_hash_nodes_destroy (GHashNode *hash_node, GFreeFunc *free_func) +g_hash_nodes_destroy (GHashNode *hash_node) { GHashNode *node; @@ -389,10 +378,7 @@ g_hash_nodes_destroy (GHashNode *hash_node, GFreeFunc *free_func) node = hash_node; while (node->next) - { - if (free_func) (*free_func)(node->key); - node = node->next; - } + node = node->next; node->next = node_free_list; node_free_list = hash_node; diff --git a/glib.h b/glib.h index a2f4327..39c73f8 100644 --- a/glib.h +++ b/glib.h @@ -960,8 +960,6 @@ gint g_hash_table_foreach_remove (GHashTable *hash_table, GHRFunc func, gpointer user_data); gint g_hash_table_size (GHashTable *hash_table); -void g_hash_table_set_key_freefunc (GHashTable *hash_table, - GFreeFunc *free_func); /* Caches diff --git a/glib/ghash.c b/glib/ghash.c index 6fa142b..0ff5a24 100644 --- a/glib/ghash.c +++ b/glib/ghash.c @@ -40,7 +40,6 @@ struct _GHashTable GHashNode **nodes; GHashFunc hash_func; GCompareFunc key_compare_func; - GFreeFunc *free_func; }; @@ -49,10 +48,8 @@ static GHashNode** g_hash_table_lookup_node (GHashTable *hash_table, gconstpointer key); static GHashNode* g_hash_node_new (gpointer key, gpointer value); -static void g_hash_node_destroy (GHashNode *hash_node, - GFreeFunc *free_func); -static void g_hash_nodes_destroy (GHashNode *hash_node, - GFreeFunc *free_func); +static void g_hash_node_destroy (GHashNode *hash_node); +static void g_hash_nodes_destroy (GHashNode *hash_node); static GMemChunk *node_mem_chunk = NULL; @@ -73,7 +70,6 @@ g_hash_table_new (GHashFunc hash_func, hash_table->hash_func = hash_func ? hash_func : g_direct_hash; hash_table->key_compare_func = key_compare_func; hash_table->nodes = g_new (GHashNode*, hash_table->size); - hash_table->free_func = NULL; for (i = 0; i < hash_table->size; i++) hash_table->nodes[i] = NULL; @@ -89,7 +85,7 @@ g_hash_table_destroy (GHashTable *hash_table) g_return_if_fail (hash_table != NULL); for (i = 0; i < hash_table->size; i++) - g_hash_nodes_destroy (hash_table->nodes[i], hash_table->free_func); + g_hash_nodes_destroy (hash_table->nodes[i]); g_free (hash_table->nodes); g_free (hash_table); @@ -174,7 +170,7 @@ g_hash_table_remove (GHashTable *hash_table, { dest = *node; (*node) = dest->next; - g_hash_node_destroy (dest, hash_table->free_func); + g_hash_node_destroy (dest); hash_table->nnodes--; } @@ -253,13 +249,13 @@ g_hash_table_foreach_remove (GHashTable *hash_table, if (prev) { prev->next = node->next; - g_hash_node_destroy (node, hash_table->free_func); + g_hash_node_destroy (node); node = prev; } else { hash_table->nodes[i] = node->next; - g_hash_node_destroy (node, hash_table->free_func); + g_hash_node_destroy (node); goto restart; } } @@ -297,12 +293,6 @@ g_hash_table_size (GHashTable *hash_table) return hash_table->nnodes; } -void -g_hash_table_set_key_freefunc (GHashTable *hash_table, GFreeFunc *free_func) -{ - hash_table->free_func = free_func; -} - static void g_hash_table_resize (GHashTable *hash_table) { @@ -371,15 +361,14 @@ g_hash_node_new (gpointer key, } static void -g_hash_node_destroy (GHashNode *hash_node, GFreeFunc *free_func) +g_hash_node_destroy (GHashNode *hash_node) { - if (free_func) (*free_func)(hash_node->key); hash_node->next = node_free_list; node_free_list = hash_node; } static void -g_hash_nodes_destroy (GHashNode *hash_node, GFreeFunc *free_func) +g_hash_nodes_destroy (GHashNode *hash_node) { GHashNode *node; @@ -389,10 +378,7 @@ g_hash_nodes_destroy (GHashNode *hash_node, GFreeFunc *free_func) node = hash_node; while (node->next) - { - if (free_func) (*free_func)(node->key); - node = node->next; - } + node = node->next; node->next = node_free_list; node_free_list = hash_node; diff --git a/glib/glib.h b/glib/glib.h index a2f4327..39c73f8 100644 --- a/glib/glib.h +++ b/glib/glib.h @@ -960,8 +960,6 @@ gint g_hash_table_foreach_remove (GHashTable *hash_table, GHRFunc func, gpointer user_data); gint g_hash_table_size (GHashTable *hash_table); -void g_hash_table_set_key_freefunc (GHashTable *hash_table, - GFreeFunc *free_func); /* Caches