summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--Src/Modules/ksh93.c3
2 files changed, 4 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index ec5d72124..a130d22cc 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2026-06-10 Mikael Magnusson <mikachu@gmail.com>
+ * 54705: Src/Modules/ksh93.c: ksh93: fix use after free of
+ .sh.edchar
+
* 54704 + 54728: Src/Modules/ksh93.c: remove obsolete workaround
in ksh93 module
diff --git a/Src/Modules/ksh93.c b/Src/Modules/ksh93.c
index ff9cfba1b..5204ab8cc 100644
--- a/Src/Modules/ksh93.c
+++ b/Src/Modules/ksh93.c
@@ -197,8 +197,7 @@ ksh93_wrapper(Eprog prog, FuncWrap w, char *name)
strcpy(sh_edmode, "\033");
else
strcpy(sh_edmode, "");
- if (sh_edchar == sh_unsetval)
- sh_edchar = dupstring(getsparam("KEYS"));
+ sh_edchar = dupstring(getsparam("KEYS"));
if (varedarg) {
char *ie = itype_end((sh_name = dupstring(varedarg)), INAMESPC, 0);
if (ie && *ie) {