update.
[chise/concord.git] / name.c
diff --git a/name.c b/name.c
index 90cde63..3f44b12 100644 (file)
--- a/name.c
+++ b/name.c
 #include <string.h>
 #include <stdlib.h>
 #include "concord-name.h"
-
-struct CONCORD_HASH_TABLE_ENTRY
-{
-  void *key;
-  void *value;
-};
-
-struct CONCORD_HASH_TABLE
-{
-  size_t size;
-  CONCORD_HASH_TABLE_ENTRY *data;
-};
-
-CONCORD_HASH_TABLE* concord_make_hash_table (size_t size);
-void concord_destroy_hash_table (CONCORD_HASH_TABLE* hash);
-unsigned long concord_hash_c_string (const unsigned char *ptr);
+#include "hash-i.h"
 
 CONCORD_HASH_TABLE*
 concord_make_hash_table (size_t size)
@@ -194,6 +179,7 @@ concord_name_table_grow (CONCORD_NAME_TABLE* table)
            }
        }
     }
+  free (table->data);
   table->size = new_table->size;
   table->data = new_table->data;
   free (new_table);