summaryrefslogtreecommitdiff
path: root/diffcore-rename.c
diff options
context:
space:
mode:
authorElijah Newren <newren@gmail.com>2020-11-02 18:55:03 (GMT)
committerJunio C Hamano <gitster@pobox.com>2020-11-02 20:15:50 (GMT)
commitb7879b0ba6ee1306a42227f7fd7f4e5f50409184 (patch)
tree32f328d974b2a59154e062edacda2158935d1fd7 /diffcore-rename.c
parent97a39a4a930ebec9162f90ebd0412aed47d413d0 (diff)
downloadgit-b7879b0ba6ee1306a42227f7fd7f4e5f50409184.zip
git-b7879b0ba6ee1306a42227f7fd7f4e5f50409184.tar.gz
git-b7879b0ba6ee1306a42227f7fd7f4e5f50409184.tar.bz2
hashmap: allow re-use after hashmap_free()
Previously, once map->table had been freed, any calls to hashmap_put(), hashmap_get(), or hashmap_remove() would cause a NULL pointer dereference (since hashmap_free_() also zeros the memory; without that zeroing, calling these functions would cause a use-after-free problem). Modify these functions to check for a NULL table and automatically allocate as needed. Also add a HASHMAP_INIT(fn, data) macro for initializing hashmaps on the stack without calling hashmap_init(). Signed-off-by: Elijah Newren <newren@gmail.com> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'diffcore-rename.c')
0 files changed, 0 insertions, 0 deletions