aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBaptiste Daroussin <bapt@FreeBSD.org>2026-03-05 16:12:51 +0000
committerBaptiste Daroussin <bapt@FreeBSD.org>2026-03-05 16:13:08 +0000
commit6d2a147ae558ef423e3df451a9049200b291a8d0 (patch)
tree488845bc3859463a17422af46a5af3dc9f77d706
parent80b4129bef8b908eb19fe47853cb6e45e4513d76 (diff)
libedit: fix use after free
-rw-r--r--contrib/libedit/map.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/contrib/libedit/map.c b/contrib/libedit/map.c
index e45b819c0be0..6e08d647a980 100644
--- a/contrib/libedit/map.c
+++ b/contrib/libedit/map.c
@@ -962,12 +962,12 @@ map_end(EditLine *el)
el->el_map.emacs = NULL;
el->el_map.vic = NULL;
el->el_map.vii = NULL;
- el_free(el->el_map.help);
- el->el_map.help = NULL;
for (size_t nf = EL_NUM_FCNS; nf < el->el_map.nfunc; nf++) {
el_free((void *)(intptr_t)el->el_map.help[nf].name);
el_free((void *)(intptr_t)el->el_map.help[nf].description);
}
+ el_free(el->el_map.help);
+ el->el_map.help = NULL;
el_free(el->el_map.func);
el->el_map.func = NULL;
}