Bug#940989: ksh: KEYBD trap with undefined associative-array elements kills shell
Package: ksh
Version: 2020.0.0~beta1-1
Severity: normal
Dear Maintainer,
My .env file contains
typeset -A SH_ktbl; SH_ktbl[' ']=".sh.edchar=$'\026\t'"
trap 'eval "${SH_ktbl[${.sh.edchar}]}"' KEYBD
(Replaces tab with ^V-tab; suggested by David Korn to disable
command-name and filename completion so tabs can be entered normally.)
But, in an apparent memory race condition, perhaps due to undefined
array elements, the new 2020 version soon gives "double free or
corruption (fasttop)" and kills the shell.
(For my situation,
trap "[[ \${.sh.edchar} == $'\t' ]] && .sh.edchar=$'\026\t'" KEYBD
is a less-efficient workaround.)
Bill
-- System Information:
Debian Release: bullseye/sid
APT prefers unstable
APT policy: (500, 'unstable')
Architecture: i386 (i686)
Kernel: Linux 5.2.0-2-686-pae (SMP w/2 CPU cores)
Locale: LANG=en_US, LC_CTYPE=en_US (charmap=ISO-8859-1), LANGUAGE=en_US (charmap=ISO-8859-1)
Shell: /bin/sh linked to /bin/bash
Init: sysvinit (via /sbin/init)
Versions of packages ksh depends on:
ii binfmt-support 2.2.0-2
ii libc6 2.29-2
ksh recommends no packages.
ksh suggests no packages.
-- no debconf information
Reply to: