wmem: Delay creation of map table until its needed

wmem_map_new_autoreset(wmem_epan_scope(), wmem_file_scope(), ...)
doesn't have "file" scope ready at startup to create hash table
and will assert.

Change-Id: I3437f45ef42bf8635e4d504cf073fc3fb0c9a8cd
Reviewed-on: https://code.wireshark.org/review/19825
Reviewed-by: Michael Mann <mmann78@netscape.net>
Petri-Dish: Michael Mann <mmann78@netscape.net>
Reviewed-by: Evan Huus <eapache@gmail.com>
Tested-by: Petri Dish Buildbot <buildbot-no-reply@wireshark.org>
This commit is contained in:
Michael Mann 2017-01-28 12:31:29 -05:00 committed by Evan Huus
parent 8f81dd4f82
commit 120a1ebb22
1 changed files with 4 additions and 2 deletions

View File

@ -107,7 +107,8 @@ wmem_map_new(wmem_allocator_t *allocator,
map->eql_func = eql_func;
map->master = allocator;
map->allocator = allocator;
wmem_map_init_table(map);
map->count = 0;
map->table = NULL;
return map;
}
@ -152,7 +153,8 @@ wmem_map_new_autoreset(wmem_allocator_t *master, wmem_allocator_t *slave,
map->eql_func = eql_func;
map->master = master;
map->allocator = slave;
wmem_map_init_table(map);
map->count = 0;
map->table = NULL;
map->master_cb_id = wmem_register_callback(master, wmem_map_destroy_cb, map);
map->slave_cb_id = wmem_register_callback(slave, wmem_map_reset_cb, map);