diff options
Diffstat (limited to 'src/hashtab.c')
-rw-r--r-- | src/hashtab.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/hashtab.c b/src/hashtab.c index 0c1aca2c5b..dc4ef8888b 100644 --- a/src/hashtab.c +++ b/src/hashtab.c @@ -405,10 +405,6 @@ hash_may_resize( return FAIL; // overflow } - // bail out if the hashtab is already at the desired size - if (newsize == ht->ht_mask + 1) - return OK; - if (newsize == HT_INIT_SIZE) { // Use the small array inside the hashdict structure. @@ -425,6 +421,13 @@ hash_may_resize( oldarray = ht->ht_array; CLEAR_FIELD(ht->ht_smallarray); } + + else if (newsize == ht->ht_mask + 1) + { + // the hashtab is already at the desired size, bail out + return OK; + } + else { // Allocate an array. |