[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

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: