1 --- glibc-2.3.3/iconv/iconvconfig.c.orig 2003-09-14 18:31:53.000000000 +0200
2 +++ glibc-2.3.3/iconv/iconvconfig.c 2004-03-18 16:08:13.270818328 +0100
5 (following last entry with step count 0)
8 +static struct hash_entry *hash_table;
9 +static size_t hash_size;
11 +/* Function to insert the names. */
12 +static void name_insert (const void *nodep, VISIT value, int level)
18 + if (value != leaf && value != postorder)
21 + name = *(struct name **) nodep;
22 + idx = name->hashval % hash_size;
23 + hval2 = 1 + name->hashval % (hash_size - 2);
25 + while (hash_table[idx].string_offset != 0)
26 + if ((idx += hval2) >= hash_size)
29 + hash_table[idx].string_offset = strtaboffset (name->strent);
31 + assert (name->module_idx != -1);
32 + hash_table[idx].module_idx = name->module_idx;
40 size_t string_table_size;
41 struct gconvcache_header header;
42 - struct hash_entry *hash_table;
44 struct module_entry *module_table;
46 char *cur_extra_table;
47 @@ -1009,30 +1035,6 @@
48 + strlen (".XXXXXX")];
49 char finalname[prefix_len + sizeof (GCONV_MODULES_CACHE)];
51 - /* Function to insert the names. */
52 - static void name_insert (const void *nodep, VISIT value, int level)
58 - if (value != leaf && value != postorder)
61 - name = *(struct name **) nodep;
62 - idx = name->hashval % hash_size;
63 - hval2 = 1 + name->hashval % (hash_size - 2);
65 - while (hash_table[idx].string_offset != 0)
66 - if ((idx += hval2) >= hash_size)
69 - hash_table[idx].string_offset = strtaboffset (name->strent);
71 - assert (name->module_idx != -1);
72 - hash_table[idx].module_idx = name->module_idx;
75 /* Open the output file. */
76 assert (GCONV_MODULES_CACHE[0] == '/');
77 strcpy (stpcpy (mempcpy (tmpfname, prefix, prefix_len), GCONV_MODULES_CACHE),