$OpenBSD: BUG-REPORTS,v 1.5 1996/11/21 07:59:24 downsj Exp $ List of reported problems (problems reported and fixed before 5.0.4 not included). Unresolved problems (may or may not still exist) marked by *, problems believed to be fixed marked by x. * pdksh 5.0.3, MIPS RISC/os 5.0 (bsd universe) (noted by Michael Rendell): for interactive, job controlled shells, the kernel's tty state gets twisted in such a way that all output is lost (eg, if ttyXX is wedged then "echo hi > /dev/ttyXX" from a seperate login appears to succeed but produces no output on ttyXX). Work around is to run a program and hit ^C. * pdksh 5.0.1, NetBSD 0.9a? (reported by Simon J. Gerraty): problem with job control not finding tty [from Mail.1:71]: Also, I have noticed (with 5.0.1 anyway) that if as root I su to a user I get: root:511$ su foobar warning: won't have full job control [1] + Stopped (tty output) stty erase ^? foobar:1$ * pdksh 5.0.8, - (reported by Sean Hogan): attempting file name completion on a word with a single backquote causes a "no closing quote" error and loses the partially entered command (vi mode). [see Mail.2:48] * pdksh 5.0.10, - (reported by Andrew Moore): no overflow checking is done in integer parsing code. [see Mail.3:78] * pdksh 5.0.6+5.1.2, BSD43/MachTen (reported by Dan Menchaca): ksh freezes up terminal after a while after printing process exit message. 5.1.2 causes system to hang after executing two commands. [see Mail.3:96,5:42] * pdksh 5.1.3, - (reported by Brad Warkentin & others): if the last command of a pipeline is a shell builtin, it is not executed in the parent shell, so "echo a b | read foo bar" does not set foo and bar in the parent shell (at&t ksh will). [see Mail.7:32,Mail.9:65] * pdksh 5.1.3, - (reported by Gabor Zahemszky): emacs/vi doesn't have \ as quote character. [see Mail.7:87] * pdksh 5.1.3, - (reported by Gabor Zahemszky): emacs default bindings doesn't have vt52 arrow keys or vt100 alternate keypad mode bindings. [see Mail.7:87] * pdksh 5.1.3, SCO 3.2.2 (reported by Gabor Zahemszky): shell hangs waiting for finished process to finish. [see Mail.7:87] * pdksh 5.2.0, - (reported by Gabor Zahemszky): ^V in vi leaves cursor at start of the line. [see Mail.8:43] * enhancements that haven't been merged yet - Mail.6:36-39,78,84 recursive function diffs (add hard limit on depeth of recursion) * pdksh 5.2.3, - (reported by David Gast(? gast@twinsun.com)): history (fc, et al) don't work in shell scripts. [see Mail.10:49] * pdksh 5.2.4, - (reported by Gabor Zahemszky): echo ${foo[*]#/} generates bad substsitution error, newer ksh's don't (older ones do); error includes {...#@(/)}. [see Mail.XXX:XXX] * pdksh 5.2.4, - (reported by Gabor Zahemszky): emacs: ^P steps through multiline commands - should go to start of command. [see Mail.XXX:XXX] * pdksh 5.2.7, - (reported by Adrian Marsh): typeset -L20u xxx is ok is ksh88 but not in pdksh. [see Mail.XXX:XXX] * pdksh 5.2.7, - (reported by Gabor Zahemszky): TMOUT doesn't effect select and read operations. [see Mail.XXX:XXX] * pdksh 5.2.8, - : extended pattern globing doesn't handle nested parens (). * pdksh 5.2.10, - (reported by Simon J. Gerraty): in emacs, applied to a word with a macro does not complete the word (only expands the macro). [see Mail.XXX] --------------------- put fixed problems below this line --------------------- x pdksh 5.0.3, NetBSD 0.9a (reported by Simon J. Gerraty): pipelines occasionally hang. [from Mail.1:71]: Yes, I just built 5.0.3 on zen (NetBSD) and the menu stuff worked fine. However I've just done: sjg:910$ diff -cb /etc/profile profile | more And it has been sitting there ever since. [... gdb output indicating process groups set up ok - presumed problem is with tty process group] [Fixed in 5.0.4 - do tcsetpgrp() in both parent and child for first process] x pdksh 5.0.2, ISC unix 3.01 (reported by Sean Hogan): set +o monitor (in interactive shell?) closes tty [from Mail.1:64]: I'm having two problems with the job control code, which I believe might be related. The first one is that "set +o monitor" closes the tty, which causes the shell to exit since its input is gone. According to the code, that would imply that FTALKING has mysteriously been turned off (jobs.c:343). But my understanding of the code is that FTALKING would only be clear for background processes, and set would be done by the shell. Do you have any insights here? It's not a big deal of course; I don't need to turn off monitor anyway. [fixed in 5.0.5 - problem was tty process group was being restored so shell could no longer read from tty] x pdksh 5.0.4, - (reported by Simon J. Gerraty and Sean Hogan): test "" -a x would fail. [fixed in 5.0.5 - t_wp being unnecessarily decremented in primary()] x pdksh 5.0.4, -: test -p foo would always fail. [fixed in 5.0.5 - spell S_ISFIFO correctly] x pdksh 5.0.4, -: test ! ! foo would generate error (unexpected !) [fixed in 5.0.5 - nexpr() always calls nexpr(), changes to posix code] x pdksh 5.0.4, -: set -i would generate an internal error. [fixed in 5.0.5 - use OF_SET in creating set_opts] x pdksh 5.0.4, -: let 0>22 would evaluate to true (and 0<22 false) [fixed in 5.0.5 - reversed order of O_LT and O_GT in enum] x pdksh 5.0.4, - (reported by Sean Hogan): echo does not process escape characters (ie, echo "foo\c" doesn't to the sysV thing) [see Mail.1:98] [fixed in 5.0.5 - echo now behaves like sysv echo] x pdksh 5.0.4, - (reported by Sean Hogan): tty process groups not restored properly (vi, :sh, exit causes vi to received SIGTTOU). [see Mail.1:98] [fixed in 5.0.5 - restore tty process group in j_exit] x pdksh 5.0.4, - (reported by Sean Hogan): the exit command does not do the stopped jobs check. [see Mail.1:94,95,98] [fixed in 5.0.5 - added LSHELL, hack c_exitreturn to use it] x pdksh 5.0.3, ISC unix 3.01 (reported by Sean Hogan): if notify is set, running cat & produces "[1] + Stopped (tty input) cat", but jobs, fg, etc. don't know about the job. [from Mail.1:76] I get [1] + Stopped (tty input) cat. Interestingly, "jobs" reports nothing, and "fg" doesn't see it either. But it's definitely there in the ps output. It only responds to kill -9, nothing else. I guess this is a side track? [see also Mail.1:97,Mail.2:2,3] [fixed in 5.0.6 - don't remove stopped jobs in the notify code of check_job()] x pdksh 5.0.5, - (reported by Sean Hogan): repeated history commands were being echoed after the command was executed. [see Mail.2:5,6] [fixed in 5.0.6 - call shf_flush() in case SHIST: of yylex()] x pdksh 5.0.5, -: wait with no arguments would hang forever. [fixed in 5.0.6 - only wait for running jobs in waitfor()] x pdksh 5.0.2, HP-UX 9.01 (reported by Sean Hogan): scipts occasionally get stopped with SIGTTIN [from Mail.1:68]: I noticed another small problem today, which is that occasionally (on an HP 9000/715, HP-UX 9.01, cc from the ANSI C developer set) a background process which is definitely not reading from its input stops with SIGTTIN. I first noticed this with a nohup'ed process, but it periodically happens without as well. The process is a perl script, if that makes any difference. Have you seen this on your HP(s)? [hasn't been seen in 5.0.3: Mail.1:73,76] [not a shell bug, see Mail.2:14,15] x pdksh 5.0.6, - (reported by Gordan Larson, Ed Ferguson): shell does not compile when VI isn't defined. [see Mail.2:22,40] [fixed in 5.0.7 - fixed up lex.c] x pdksh 5.0.6, - (reported by Gordan Larson): ksh.1 font typo. [see Mail.2:23] [fixed in 5.0.7] x pdksh 5.0.6, FreeBSd 1.1.5 (reported by Thomas Gellekum): CLK_TCK is defined to wrong value on FreeBSD; no depend target in Makefile; update /etc/shells in install target. [see Mail.2:28] [fixed in 5.0.7 - include in sh.h to get the right value; added depend target; print warning if ksh not in /etc/shells] x pdksh 5.0.6, - (reported by Michael Haardt): shell does not compile if JOBS not defined. [see Mail.2:32] [fixed in 5.0.7 - added ifdefs to jobs.c(check_job)] x pdksh 5.0.6, - (reported by Nick Holloway): exit status of command substitution is lost (known problem). [from Mail.2:33]: This is a variation on a theme of bug number 10 (and is one reason why currently ksh can not be used for Linux's MAKEDEV). The exit status from command substitution is not available when used with variable assignment. x=`false` && echo "Non-zero exit status lost". [fixed in 5.0.7 - instead of faking :, set rv to subst_exstat] x pdksh 5.0.7 - (reported by Sean Hogan): CMASK redefined in emacs.c [see Mail.2:44] [fixed in 5.0.8 changed CMASK to CHARMASK] x pdksh 5.0.7 - (reported by Sean Hogan): "r" (fc -e -) doesn't work. [see Mail.2:45] [fixed in 5.0.8 - increment wp, change strcmp() test] x pdksh 5.0.7 - (reported by Thomas Gellekum): make install typeo. [see Mail.2:46] [fixed in 5.0.8 - added missing $] x pdksh 5.0.8 - (reported by Sean Hogan): "FOO=bar exec blah" does not put FOO in environment. [see Mail.2:50] [fixed in 5.0.9 - re-arranged exec/command/builtin code in comexec()] x pdksh 5.0.8, QNX 4.2 (reported by Brian Campbell): "exec > /dev/null" generates an error. [see Mail.2:51] [see Mail.2.58 - caused by ambitious compiler using same label for c_exec() and c_builtin()] [fixed in 5.0.9 - c_exec() no longer an empty function.] x pdksh 5.0.8, - (reported by Brian Campbell): "echo a{b," prints a "Missing }" error - at&t ksh does not. at&t ksh always has brace-expansion on (unless set -o nogolob). [see Mail.2:51] [fixed in 5.0.9 - brace expansion now compatible with at&t ksh] x pdksh 5.0.8, - (reported by Sean Hogan): ulimit output garbled; syntax error in c_ulimit.c; no configure check for HAVE_SETRLIMIT. [see Mail.2:64] [fixed in 5.0.9 - use shprintf instead of shellf to print values; add setrlimit() check to configure] x pdksh 5.0.7, - (reported by Jan Djarv): `echo > /foo/bar' causes a script to exit - POSIX says it shouldn't. [see Mail.2:60] [fixed in 5.0.9 - iosetup returns error code, error messages cleaned up, etc] x pdksh 5.0.8, - : `more /etc/passwd &' followed by fg messes up tty settings. [fixed in 5.0.9 - only save new tty settings if job originally started in fg] x pdksh 5.0.9, - (reported by Andrew Moore): a blank line causes $? to be set to zero, newline after a here-document marker isn't read. [see Mail.3:5,6] [fixed in 5.0.10 - don't execute null trees, read the newline] x pdksh 5.0.9, - (reported by Michael Sullivan): mail checking reports you have mail, when there is only old mail. [fixed in 5.0.10 - use atime/mtime instead of size] x pdksh 5.0.9, - (reported by Chris Oates): if RANDOM is in ksh's environ when it starts, the shell dumps core. [see Mail.3:7,8] [fixed in 5.0.10 - var.c(typeset): free t->val.s instead of t->val.s + t->type] x pdksh 5.0.9, - (reported by Seah Hogan): ISC 3.01's make is confused by a backslash followed by a blank line. [see Mail.3:9,13] [fixed in 5.0.10 - changed make depend target to change blank lines to sh.h] x pdksh 5.0.9, - (reported by Andrew Moore): commands without a newline cause syntax errors - sh/ksh execute the commands. [see Mail.3:15] [fixed in 5.0.10 - have yyparse() accept newline and EOF] x pdksh 5.0.9, - (reported by Andrew Moore): empty arithmetic expressions not accepted. [see Mail.3:15,17] [fixed in 5.0.10 - v_evaluate(): if first token is END, changed to literal 0] x pdksh 5.0.9, - (reported by Andrew Moore): nulls in input are not ignored. [see Mail.3:15] [fixed in 5.0.10 - added strip_nuls() function and calls to it] x pdksh 5.0.9, - (reported by Andrew Moore): \241 (M-!) not passed through command substitutions. [see Mail.3:15] [fixed in 5.0.10 - evaluate(): cast c to a char before comparing to MAGIC] x pdksh 5.0.9, - (reported by Andrew Moore): newlines after here-documents are read twice; shell reports an error if newline is missing. [see Mail.3:25] [fixed in 5.0.10 - fixed up readhere()] x pdksh 5.0.9, - (reported with fix by Mike Jetzer): 'r r' repeats the r command forever. [see Mail.3:38] [fixed in 5.0.10 - start the search from the previous command] x pdksh 5.0.9, - (reported by Mike Jetzer): edit of multi-line commands does not result in single history entry. [see Mail.3:38] [fixed in 5.0.10 - use hist_append() to add second+ lines] x pdksh 5.0.9, - (reported by Dale DePriest): ksh_times.h uses BROKEN_TIMES [see Mail.3:43] [fixed in 5.0.10 - changed ksh_times.h] x pdksh 5.0.9, - (reported by J. T. Conklin): using [ instead of test is slow. [see Mail.3:46] [fixed in 5.0.10 - put in kludgy check for [ in eval.c(glob)] x pdksh 5.0.9, - (reported by Michael Haardt): signals do not interrupt read commands. [see Mail.3:20] [fixed in 5.0.10 - changed c_read() to check for fatal signals after EINTR] x pdksh 5.0.10, BSDI (reported by David Tamkin): use of _POSIX_VDISABLE in tty.h causes compiler error. [see Mail.3:67] [fixed in 5.0.10.1 - new variable vdisable_c set/used in edit.c] x pdksh 5.0.8, - (reported by Donald Craig): on systems with both union wait and waitpid(), waitpid() is passed a union wait pointer instead of an int pointer. [see Mail.2:54] [fixed in 5.1 - added ksh_waitpid() define; cast status arg as needed.] x pdksh 5.0.10, - (reported by David Tamkin): space in vi command mode does nothing. [see Mail.3:76] [fixed in 5.1 - vi.c(classify[]) table got changed by accident.] x pdksh 5.0.10, - (reported by Danial Quinlan): forward-word and delete-word-forward functions in emacs don't go to the right place. [see Mail.3:79] [Fixed in 5.1 - changed order of loops in emacs.c(x_fword())] x pdksh 5.0.10, - (reported by David Tamkin): eof in multiline command causes shell to exit, even if ignoreeof is set. [see Mail.3:76] [Fixed in 5.1 - reset eof after longjmp() in main.c(shell)] x pdksh 5.0.9, Ultrix 4.2 (reported by Matthew Nethook): type-ahead while shell is waiting for a command to finish is temporarily lost until a program that reads from stdin or goes a stty/gtty is run. [see Mail.3:61,62] [Fixed in 5.1 - changed aclocal.m4 to not define HAVE_TERMIOS_H on ultrix] x pdksh 5.0.10, - (reported by David Tamkin): if INT is trapped, ^C in vi/emacs won't flush buffer/re-issue new prompt. [see Mail.3:5,76] [Fixed in 5.1 - use unwind() in vi/emacs to get back to shell()] x pdksh 5.0.10, - (reported by Dale DePriest): in emacs mode, file completions resulting in long names (>256) cause core dumps [see Mail.3:72] [Fixed in 5.1 - use dynamically sized buffers in emacs code] x pdksh 5.0.10, - (reported by Dale DePriest): in emacs mode, command completions (^[=) resulting in multiple hits caused internal memory error. [see Mail.4:8] [Fixed in 5.1 - don't call list_stash() twice in compl_command] x pdksh 5.0.10, - (reported by Dave Hatton): autoloading functions fail on the first attempt, then work. [see Mail.4:10] [Fixed in 5.1 - in findcom(), check for include() returning non-0 (was 0)] x pdksh 5.0.10, - (reported by Art Pina via Dale DePriest): when SECONDS parameter is assigned, it always acts as if 0 were assigned. [see Mail.4:12] [Fixed in 5.1 - set internal seconds variable to time - assigned value] x pdksh 5.1.0 - (reported by Larry Bouzane): for/select loops don't allow {..} to be used instead of do...done. [see Mail.4:16] [Fixed in 5.1.1 - changed syn.c(dogroup) to allow {/} instead of do/done] x pdksh 5.1.0 - (reported by Andrew Moore and Larry Bouzane): a command ending in ; or & that is not followed by a newline causes a syntax error. [see Mail.4:126,128] [Fixed in 5.1.1 - don't call syntaxerr() in get_command() if EOF is read] x pdksh 5.1.0, - (reported by Simon J. Gerraty): ksh died reading history file (complex history, in hist_skip_backup()). [see Mail.4:24] [Fixed in 5.1.1 - hist_skip_back(): don't start past the end of the buffer] x pdksh 5.1.0 BSDI 1.1 (reported by Karl Denninger): after receipt of SIGHUP, shell waits for foreground process to complete. [see Mail.4:50,57] [Fixed in 5.1.1 - added fatal_trap flag, check in jobs.c(j_waitj)] x pdksh 5.1.0 - (reported by Bob Manson): a leading non-white-space IFS character does cause a field to be delimited. [see Mail.4:68] [Fixed in 5.1.2 - changed expand() to do the right thing.] x pdksh 5.1.2, -: ^c during $ENV or .profile kills shell; should just go to prompt. [see Mail.5:14] [fixed in 5.2.4 - added intr_ok flag to main.c(include)] x pdksh 5.1.2, - (reported by Dan Quinlan): when shell prints out execution trees (typeset -f), if botches elif statements. [see Mail.5:17] [fixed in 5.1.3 - changed tree.c(ptree) to deal with elif.] x pdksh 5.1.2, - (reported by Dale DePriest): fc -l -- -40 fails if there are fewer than 40 commands. [see Mail.5:19] [fixed in 5.1.3 - changed history.c(histget) to allow out of range numbers] x pdksh 5.1.2, - (reported by Art Mills): file completion in command mode doesn't work on a single character. [see Mail.5:13] [fixed in 5.1.3 - in vi.c(vi_cmd) call complete_word() with 1 not 0] x pdksh 5.1.2, - (reported by Dan Quinlan): an error in a let statement causes shell to exit function/script. at&t ksh just prints error and returns from let. [see Mail.5:17] [fixed in 5.2.3 - added error_ok arg to evaluate() and v_evaluate()] x pdksh 5.1.2, - (reported by Art Mills): if markdirs option is set, file completion in vi adds two slashes to directories. [see Mail.5:35] [fixed in 5.1.3 - vi.c(complete_word), don't add / if file ends in one] x pdksh 5.1.2, - (reported by Dale DePriest): history read from history file have negitive numbers and can't be accessed (fc thinks neg numbers are relative). [see Mail.5:39] [fixed in 5.1.3 - EASY_HISTORY/hist_init: increment line for each line] x pdksh 5.1.2, - (reported by David Tamkin): FPATH isn't searched if PATH search can't find command (undocumented at&t ksh feature). [see Mail.5:45] [fixed in 5.1.3 - exec.c(findcom) search FPATH if PATH search fails] x pdksh 5.1.2, - (reported by Dan Quinlan): output typeset -f isn't very pretty (no indenting done). [see Mail.5:17] [fixed in 5.1.3 - indenting added to ptree routines] x pdksh 5.0.9, ISC 3.2 (reported by cobra@guarany.cpd.unb.br): Running the following script with pdksh crashes the machine: cat > /tmp/foobar The same command in an interactive pdksh does not cause a crash. [see Mail.3:21,Mail.5:62] [Fixed by Interactive - it is caused by an OS bug for which there is a patch] x pdksh 5.1.3, linux - (reported by Dan Quinlan): doesn't compile under new linux due to declaration conflict between basename() in unistd.h and pdksh'd basename. [see Mail.5:90] [fixed in 5.2.0 - changed basename() to arrayname()] x pdksh 5.1.3, - (reported by William Hudacek): very long prompts cause vi command line editor grief. [see Mail.6:2] [fixed in 5.2.0 - initial part of prompt is stripped if its too long] x pdksh 5.1.3, - (reported by Roberto Zacheo): when set -u, variable trimming with always causes an error. [see Mail.6:21] [fixed in 5.2.0 - fixed varsub() to test if variable is null] x pdksh 5.1.3, - (reported by David Tamkin): when a fucntion is autoloaded, ksh complains the definition file didn't define the function, even if it did. [see Mail.6:52] [fixed in 5.2.0 - exec.c(comexec): when checking if defined, use cp, x pdksh 5.1.3, ICS unix 3.2 (reported by Robert Clark): auto configuration test for memmove doesn't work [see Mail.6:65] [fixed in 5.2.0 - special cases added for memmove, bcopy, memset] x pdksh 5.1.3, Unixware (Intel-SVR4.2) (reported by Thanh Ma): auto configuration test for memset doesn't work; same for rlimit type. [see Mail.6:67] [fixed in 5.2.0 - special cases added for memmove, bcopy, memset; rlim_t configuration stuff re-arranged] x pdksh 5.1.3, - (reported by Mike Jetzer + fix): . in vi doesn't work after history motion or after one command is completed and another is being edited. [see Mail.6:85] [fixed in 5.2.0 - fix up classify table, special case for empty initial insert] x pdksh 5.1.3, - Janjaap van Velthooven: ^v (version) missing in vi mode. [see Mail.6:98] [fixed in 5.2.0 - added] x pdksh 5.1.3, - : y% on or before right bracket/paren/brace doesn't yank the brackets - just what is in the brackets... [fixed in 5.2.0 - changes to vi.c(domove,vi_cmd)] x pdksh 5.1.3, - (reported by Rob Mayoff): [[ ]] command doesn't do lazy evaluation. [see Mail.7:2] [fixed in 5.2.1 - test routines re-arranged to deal with this] x pdksh 5.1.3, - (reported by Will Renkel): "r | more" doesn't work (nothing is sent to more). [see Mail.7:13] [fixed in 5.2.0 - history commands now done in c_fc, not pushed onto input stack] x pdksh 5.1.3, - (reported by Rod Byrne, John Rochester): if a program leaves the non-blocking (O_NONBLOCK) flag set after it exists, the shell exits (multiple eofs). [see Mail.7:15,16,51] [fixed in 5.2.0: O_NONBLOCK is reset if read fails with EAGAIN,EWOULDBLOCK] x pdksh 5.1.3, - (reported by Dale DePriest + fix): emacs: can't delete chars from pattern in incremental search mode. [see Mail.7:17] [fixed in 5.2.0 - handle it] x pdksh 5.1.3, Linux 1.2.2 (reported by Fritz Heinrichmeyer + fix): siglist.sh doesn't work due to bug in bash 1.4.3 (trap is called incorrectly in subshell causing temp file to be removed prematurely). [see Mail.7:21] [fixed in 5.2.0 - clear all traps in subshell so file isn't removed] x pdksh 5.1.3, - (reported by Dale DePriest + fix): emacs: can't prefix commands with more than single digit; many commands don't use nnumber prefix. [see Mail.7:26,40] [fixed in 5.2.0 - x_set_arg reads sequence of numbers, other commands changed to use x_arg] x pdksh 5.1.3, - (reported by Dale DePriest): fc command line parsing (and its interaction with history alias) doesn't act like at&t ksh: history -40 gives bad option 4 error. [see Mail.7:41,49] [fixed in 5.2.1 - kludge parsing of -40 (numbers are option letters)] x pdksh 5.1.3, - (reported by Dale DePriest): if PS1 contains paramaters that get expanded, and if those parameters contain any ! characters, the !'s get changed to history numbers. [see Mail.7:44] [fixed in 5.2.0 - substitution done after ! and !! substitution] x pdksh 5.1.3, - (reported by Steve Wallis): set -a (set -o allexport) has no effect. [see Mail.7:47] [fixed in 5.2.0 - changes to c_read, c_getopts, and comexec] x pdksh 5.1.3, - (reported by Alexander S. Jones): (sleep 10000&) waits for the sleep to complete. [see Mail.7:54] [fixed in 5.2.0 - execute() case TASYNC clears EXEC flag in call to execute] x pdksh 5.1.3, - (reported by Will Renkel): positional parameters can't be accessed within temporary variable assignments (eg, "FOO=$1 blah" doesn't set FOO to $1. [see Mail.7:57] [fixed in 5.2.0 - var.c(newblock) - copy argc/argv from previous environment] x pdksh 5.1.3, SCO unix ? (reported by Sean Hogan): job control stuff doesn't work as sco doesn't do job control operations on /dev/tty. [see Mail.7:30,43,69,70,74] [fixed in 5.2.0 - don't try opening /dev/tty if on SCO] x pdksh 5.1.3, - (reported with fix by Mike Jetzer): vi globing tacks * at the end of files even if there are globing chars in last component of filename (at&t ksh does not). [see Mail.7:71] [fixed in 5.2.0 - don't append * if there are unescaped globing chars] x pdksh 5.1.3, - (reported with fix by Gabor Zahemszky): typoes in acconfig.h, sh.h uses SVR3_PGRP insteda of SYSV_PGRP. [see Mail.7:87] [fixed in 5.2.0] x pdksh 5.1.3, - (reported by Gabor Zahemszky): emacs doesn't have ^[^]. [see Mail.7:87] [fixed in 5.2.0 - added search-char-backward] x pdksh 5.2.0, - (reported by David Tamkin): pwd -P doesn't strip .. and . properly. [see Mail.7:98] [fixed in 5.2.0 - include ksh_stat.h in c_ksh.c] x pdksh 5.2.0, - (reported by Dale DePriest): unistd.h config test doesn't include sys/types before dirent.h. [see Mail.8:2] [fixed in 5.2.0] x pdksh 5.2.0, - (reported by Robert Gallant): emacs file/command completion code can clobber memory. [see Mail.8:11] [fixed in 5.2.1 - wrong variable being checked in buffer growing in emacs.c(compl_file,compl_command)] x pdksh 5.2.0, - (reported by David Tamkin): when CDPATH set and cd'ing to a directory that doesn't exist, the error message contains the last element of the CDPATH. [see Mail.8:8] [fixed in 5.2.0 - fixed error message] x pdksh 5.2.0, - (reported by David Tamkin): if PS1 has an error in it (eg, parameter expansion error), the shell loops forever printing the error. [see Mail.8:32] [fixed in 5.2.3 - create error handling environment while expanding PS1] x pdksh 5.2.0, Coherent machines (reported by Gabor Zahemszky): insert after movement in emacs mode replaces all chars with first char on line. System's bcopy doesn't handle overlapping src/dst. [see Mail.8:38,43] [fixed in 5.2.1 - check for broken memmove/bcopy in aclocal.m4] x pdksh 5.2.0, - (reported by Gabor Zahemszky): ^[= in vi prints empty strings for directory matches if markdirs is set. [see Mail.8:48] [fixed in 5.2.1 - skip trailing /'s before looking for last /] x pdksh 5.2.0, - (reported by Gabor Zahemszky): ^H bound to del-back-char not del-back-word [see Mail.8:50-52] [fixed in 5.2.1 - fixed x_emacs_keys] x pdksh 5.2.1, - (reported by David Tamkin): compile fails due to lack of c_test.h [see Mail.8:58] [fixed in 5.2.2 - fixed put c_test.h in distribution] x pdksh 5.2.2, - (reported by Simon J. Gerraty): hist_source not being initialized in complex history. [see Mail.8:64] [fixed in 5.2.3 - set it in second hist_init()] x pdksh 5.2.2, - (reported by Gabor Zahemszky): set -A does not reset the array contents. [see Mail.8:65] [fixed in 5.2.3 - changed var.c(unset) to unset whole array if appropriate] x pdksh 5.2.2, - (reported by Gabor Zahemszky): getopts stops after an error; at&t ksh carries on with next option. [see Mail.8:65] [fixed in 5.2.3 - remove GI_DONE flag from ksh_getopt()] x pdksh 5.2.2, - (reported by Gabor Zahemszky): getopts prints shell name twice in error messages. [see Mail.8:65] [fixed in 5.2.3 - added GI_NONAME flag] x pdksh 5.2.2, - (reported by Gabor Zahemszky): pdksh's test doesn't know about /dev/fd/n. [see Mail.8:65] [fixed in 5.2.3 - added test_stat() and test_eaccess()] x pdksh 5.2.2, - (reported by Thomas Gellekum): config test for memmove/bcopy missing semi-colon [see Mail.8:67] [fixed in 5.2.3] x pdksh 5.2.2, - (reported by Donald Craig): fc string doesn't find string if it is the most recent command. [see Mail.8:76] [fixed in 5.2.3 - fixed off by one error in history.c(hist_get)] x pdksh 5.2.2, - (reported by Gabor Zahemszky): pdksh doesn't do the "You have running jobs" when user attempts to log out. [see Mail.8:74] [fixed in 5.2.3 - added set -o nohup option with supporting code] x pdksh 5.2.2, - (reported by Gabor Zahemszky): configure test for broken memmove/bcopy doesn't work. [see Mail.8:93] [fixed in 5.2.3 - fixed test to copy overlapping buffers] x pdksh 5.1.3, - (reported by ): doesn't compile on solaris 5.x with COMPLEX_HISTORY defined. [see Mail.8:98] [fixed in 5.2.3 - undef COMPLEX_HISTORY if flock not available] x pdksh 5.2.2, - (reported by Gabor Zahemszky): tilde expansion not preformed in word part of ${foo[-+=?} substitution. [see Mail.9:7] [fixed in 5.2.3 - allow ~foo to end in a close brace] x pdksh 5.2.2, - (reported by Gabor Zahemszky): "fc 30" edits from 30 to most recent history (should be just 30). [see Mail.9:7] [fixed in 5.2.3 - if !-l and no last given, use first] x pdksh 5.2.2, - (reported by Gabor Zahemszky): [many problems with man page] [see Mail.9:12] [fixed in 5.2.3 - fixed problems] x pdksh 5.2.2, - (reported by Gabor Zahemszky): #else followed by non-comment in sigact.c. [see Mail.9:13] [fixed in 5.2.3 - turn it into a comment] x pdksh 5.2.2, - (reported with fix by Gabor Zahemszky): two argument form of cd doesn't work. [see Mail.9:14] [fixed in 5.2.3 - in c_cd(), use current_wd not path] x pdksh 5.2.2, - (reported with fix by Gabor Zahemszky): command -V doesn't report reserved words. [see Mail.9:30] [fixed in 5.2.3 - in c_whence(), look for reserved words if vflag set] x pdksh 5.2.3, - (reported by Dale DePriest): at&t's tbl wants space between font specification and end of table descrption (ie, fB . not fB.). [see Mail.9:41] [fixed in 5.2.4 - put spaces in] x pdksh 5.2.3, - (reported by David Tamkin & Claus L{gel Rasmussen): PS1 isn't imported from environment anymore. [see Mail.9:43,76] [fixed in 5.2.4 - main: don't set PS1 if it is already set] x pdksh 5.2.3, - (reported by Gary Rafe): If PS1 contains newlines, vi editing mode dones't redraw lines properly. [see Mail.9:63] [fixed in 5.2.4 - added prompt_skip stuff to vi/emacs] x pdksh 5.2.3, - (reported & fixed by Mike Jetzer): cd: error message if directory didn't exist was wrong. [see Mail.9:66] [fixed in 5.2.4 - print correct string in error message] x pdksh 5.2.3, - (reported & fixed by Mike Jetzer): vi: * shouldn't append a * if word contains a $. [see Mail.9:66] [fixed in 5.2.4 - vi.c(glob_word): check for $ in word, check for null expansion] x pdksh 5.2.3, - (reported & fixed by Mike Jetzer): vi: = doesn't list expansions in column form. [see Mail.9:66] [fixed in 5.2.4 - use pr_menu to print things nicely] x pdksh 5.2.3, - (reported Larry Bouzane): should be a way of installing binary/man page as pdksh instead of ksh. [see Mail.9:100] [fixed in 5.2.4 - use the --enable-shell=pdksh option to configure] x pdksh 5.2.3, - (reported by Gabor Zahemszky): [many problems with man page] [see Mail.10:20] [fixed in 5.2.4 - fixed problems] x pdksh 5.2.3, - (reported by Gabor Zahemszky): exec 1<&9 reports error with ">&9" in it. [see Mail.10:20] [fixed in 5.2.4 - changed iosetup()] x pdksh 5.2.3, - (reported by Gabor Zahemszky): man page doesn't document /dev/fd/N [see Mail.10:20] [fixed in 5.2.4 - updated manual] x pdksh 5.2.3, - (reported by Ted Coady): [[ foo/bar = foo* ]] fails; should succeed. [see Mail.10:32] [fixed in 5.2.4 - fixed problem in exec.c(dbteste_getopnd)] x pdksh 5.2.3, - (reported by Ruei-wun Tu): make on NeXT/NeXTSTEP 3.3 doesn't understand .PRECIOUS target and so does nothing. [see Mail.10:43] [fixed in 5.2.4 - moved .PRECIOUS after all in Makefile.in] x pdksh 5.2.3, - (reported & fixed by Paul Borman): shell doesn't kill foreground process when SIGHUP received; Also, CONT sent before HUP. [see Mail.10:44] [fixed in 5.2.4 - j_exit now sends HUP to foreground process] x pdksh 5.2.3, AIX 3.2.5 (reported by Ian Portsmouth): C compiler compains about sigtraps[] being re-declared in trap.c. [see Mail.10:73] [fixed in 5.2.4 - use cpp define to avoid bogus re-declaration error] x pdksh 5.2.3, - (reported by Michael Haardt): ENV should not be included if shell is compiled as sh and posix option not set. [see Mail.10:83] [fixed in 5.2.4 - only include ENV if POSIX, if compiled as sh] x pdksh 5.2.3, - (reported & fixed by DaviD W. Sanderson): case statements don't allow {/} in place of IN/ESAC. [see Mail.10:77,78] [fixed in 5.2.4 - allow {/} in case statements] x pdksh 5.2.3, - (reported by Larry Daffner): $? is incorrectly zero'd at start of traps. [see Mail.11:9] [fixed in 5.2.4 - don't clear exstat in main.c(shell)] x pdksh 5.2.3, - (reported by Frank "Crash" Edwards): configure on linux XXX doesn't detect the presence of lstat(). [see Mail.11:36] [fixed in 5.2.4 - change configure to include in lstat() test] x pdksh 5.2.3, - (reported by Gabor Zahemszky): typeset -f dumps core in the after using autoload functions. [see Mail.11:74?] [fixed in 5.2.4 - c_typeset no longer traverses the array link for functions] x pdksh 5.2.3, - (reported by Gabor Zahemszky): typeset -f does not report undefined autoload functions [see Mail.11:74?] [fixed in 5.2.4 - c_typeset: don't ignore unset functions] x pdksh 5.2.3, - (reported by Dale DePriest): alias -t -r does not reset aliases. [see Mail.11:99] [fixed in 5.2.4 - c_alias: call ksh_getopt_reset() before calling c_unalias] x pdksh 5.2.3, - (reported & fixed by Jason Tyler): 'echo abc^Jfc -e - a=b e' echos b, not bbc. [see Mail.11:100?] [fixed in 5.2.4 - hist_replace: use s, not last] x pdksh 5.2.3, - (reported by Jason Tyler): 'fc -e -' when there is no history causes infinite loop. [see Mail.11:100?] [fixed in 5.2.4 - histbackup: allow histptr to go below history] x pdksh 5.2.4, - (reported by David Tamkin): jmp_buf is used instead of sigjmp_buf. [see Mail.XXX:XXX] [fixed in 5.2.5 - added ksh_jmp_buf and defined appropriately] x pdksh 5.2.4, - (reported by Stephen Coffin): / in vi mode does not repeat last search. [see Mail.XXX:XXX] [fixed in 5.2.5 - vi.c(vi_hook) - make it repeat last search] x pdksh 5.2.4, - (reported by Gabor Zahemszky): functions containing select commands aren't printed correctly by typeset. [see Mail.XXX:XXX] [fixed in 5.2.5 - tree.c(ptree) - add case for TSELECT] x pdksh 5.2.4, - (reported & fixed by Stefan Dalibor): COLUMNS isn't set on shell start up (and window size is ignored) 'cause tty_fd isn't valid when x_init() is called. [see Mail.XXX:XXX] [fixed in 5.2.5 - call x_init() after j_init() is called] x pdksh 5.2.4, - (reported by Will Renkel): "echo -" just prints a blank line - should print the minus. [see Mail.XXX:XXX] [fixed in 5.2.5 - c_ksh.c(c_print): don't do argument parsing on lone -] x pdksh 5.1.3, - (reported by Gabor Zahemszky): emacs doesn't have ^[*. [see Mail.7:87] [fixed in 5.2.5] x pdksh 5.2.3, - (reported by Mike Jetzer): in vi, = doesn't append a / after directories. [see Mail.9:66] [fixed in 5.2.5] x pdksh 5.2.0, - (reported by Gabor Zahemszky): can set readonly variables via command assignments (eg, "readonly x=y; x=z /bin/echo hi" should fail and doesn't). [see Mail.8:50,65] [fixed in 5.2.5 - LOCAL_COPY flag passed from comexec() down to local()] x pdksh 5.2.4, - (reported by Tom Karches): history: "r old=new", with no commands prefix given, prints "fc: too mnay arguments" - it should do the subst on the previous command. [see Mail.XXX:XXX] [fixed in 5.2.5] x pdksh 5.2.3, - (reported by Vigen Pogosyan): assignments in $(( ... )) remember the base that was assigned in pdksh - does not in at&t ksh. [see Mail.10:54] [fixed in 5.2.5: uset setint() in expr.c(evalexpr)] x pdksh 5.2.4, - (reported by Gabor Zahemszky): emacs: ^O steps down two lines (should be 1). [see Mail.XXX:XXX] [fixed in 5.2.5: convert history line to command number, then convert back] x pdksh 5.2.3, - (reported by David Gast(? gast@twinsun.com)): fc -ln -1 -1 reports the current command, not the previous command. [see Mail.10:49] [fixed in 5.2.5] x pdksh 5.2.3, - (reported by Matthew Green): foo=`^Jecho bar` doesn't set foo to bar (foo is empty). [see Mail.XXX:XXX] [fixed in 5.2.5: syn.c: set multiline.on when source is SSTRING] x pdksh 5.2.5, - (reported by Gabor Zahemszky): continue/break: if n is too big, shell prints internal error message. [see Mail.XXX:XXX] [fixed in 5.2.6: fix c_brkcont to use last loop if n is too big] x pdksh 5.2.5, - (reported by Gabor Zahemszky): set: +o in ksh93 prints command that sets various options. [see Mail.XXX:XXX] [fixed in 5.2.6: changed misc.c(printoptions)] x pdksh 5.2.5, - (reported by Gabor Zahemszky): COLUMNS/LINES variables are not exported. [see Mail.XXX:XXX] [fixed in 5.2.6: use typeset() in edit.c(x_init) to export COLUMNS/LINES] x pdksh 5.2.5, - (reported by Gabor Zahemszky): emacs: puts space after completed directories. [see Mail.XXX:XXX] [fixed in 5.2.6: check for single/non-directory match in emacs.c(do_complete)] x pdksh 5.2.5, - (reported by Gabor Zahemszky): vi: # removes comment and executes if command already commented. [see Mail.XXX:XXX] [fixed in 5.2.6: added vi.c(do_comment)] x pdksh 5.2.7, - (reported by Adrian Marsh): test doesn't have == operator. [see Mail.XXX:XXX] [fixed in 5.2.8: added == to c_test.c operator table] x pdksh 5.2.7, - (reported by Mike Jetzer): pdksh sets/exports COLUMNS/LINES which causes applications not to respond to window size changes. [see Mail.XXX:XXX] [fixed in 5.2.8: COLUMNS/LINES no longer exported automatically] x pdksh 5.2.7, - (reported by Gabor Zahemszky): getopts sets OPTIND differently that at&t ksh when a bad option is given. [see Mail.XXX:XXX] [fixed in 5.2.8: OPTIND not set if option was bad - fragile fix - may go away] x pdksh 5.2.7, - (reported with fix by Marc Olzheim): sh version shouldn't have mail check stuff, macro expansion in PS[0-9]. [fixed in 5.2.8: added lots of ifdefs] x pdksh 5.2.7, - (reported by Gabor Zahemszky): sub commands in PS1 cause a warning message to be printed. [see Mail.XXX:XXX] [fixed in 5.2.8: lex.c(set_prompt) - don't print the warning message] x pdksh 5.2.7, - (reported by Tom Watson): some environment variables (eg, PATH) are converted to uppercase on 16-bit int machine. [see Mail.XXX:XXX] [fixed in 5.2.8: struct tbl.flag (32 bit thing) was being treated as an int in some places] x pdksh 5.2.7, - (reported by Gabor Zahemszky): unset always returns 0 - should return 1 if variable/function is not set. [see Mail.XXX:XXX] [fixed in 5.2.8: fixed c_sh.c(c_unset)] x pdksh 5.2.7, - (reported by Gabor Zahemszky): select should only print the menu the first time, if REPLAY is empty, or if a blank line is entered. [see Mail.XXX:XXX] [fixed in 5.2.8: fixed up exec.c(execute,do_selectargs)] x pdksh 5.2.7, - (reported by Gabor Zahemszky): shell reports "cannot execute" error if file exists, even if . not in path. [see Mail.XXX:XXX] [fixed in 5.2.8: fixed up exec.c(comexec)] x pdksh 5.1.3, - (reported with partial fix by ra@rhi.hi.is): shell doesn't listen to sigwinch. [see Mail.7:7 and related] [fixed in 5.2.8: changed edit.c(x_init) to catch sigwinch] x pdksh 5.2.7, - (reported by Gabor Zahemszky): typeset doesn't report variables that have attributes (like export) but no values. [see Mail.XXX:XXX] [fixed in 5.2.8: fixed up c_ksh.c(c_typeset)] x pdksh 5.2.7, - (reported by Gabor Zahemszky): error message printed as a result of "set -o nounset" is different from at7t ksh. [see Mail.XXX:XXX] [fixed in 5.2.8: fixed error messges in eval.c] x pdksh 5.2.7, - (reported by Gabor Zahemszky): vi/emacs: when listing command/file completions, should go back at most one space. Also, should allow completions on zero length names. [see Mail.XXX:XXX] [fixed in 5.2.8: fixed edit.c(x_locate_word); now allows zero-length file completions (but not command)] * pdksh 5.2.7, - (reported by Gabor Zahemszky): emacs: # doesn't do the comment thing. [see Mail.XXX:XXX] [fixed in 5.2.8: added emacs.c(x_comment) et al.] x pdksh 5.2.7, - (reported by Gabor Zahemszky): arithmatic expressions containing variables not expanded as in at&t ksh. eg, "x=1+2, let y=x" fails. [see Mail.XXX:XXX] [fixed in 5.2.8: added evaling/INEXPREVAL/ET_RECURSIVE code to expr.c] x pdksh 5.2.7, - (reported by Gabor Zahemszky): unsetting the 0th element of an array kills the whole array. [see Mail.XXX:XXX] [fixed in 5.2.8: var.c(unset) - allow ARRAY to be preserved] x pdksh 5.2.7, - (reported by Gabor Zahemszky): unsetting a function while it is being executed can result in core dump. [see Mail.XXX:XXX] [fixed in 5.2.8: table.c(texpand) - dont free if FINUSE is set] * pdksh 5.2.7, - (reported by Gabor Zahemszky): exec 3<&p doesn't close shells copy of the coprocess file desc. [see Mail.XXX:XXX] [fixed in 5.2.8: coprocess stuff made to act like ksh93 co-processes] x pdksh 5.2.8, - (reported with fix by Lars Hecking): doesn't compile as sh - c_ksh.c and jobs.c boom out. [see Mail.XXX:XXX] [fixed in 5.2.9: added ifdef KSH to appropriate places] x pdksh 5.2.8, - (reported by Paolo Zeppegno): assignments containing brackets are treated as commands. [see Mail.XXX:XXX] [fixed in 5.2.9: fixed bug in vars.c(skip_wdvarname).] x pdksh 5.2.5, - (reported by Adrian Marsh): configuration on Linux FT fails. Caused by configure script using -g flag - gcc passes -lg to ld, ld fails to find -lg (autoconf or Linux FT bug). [see Mail.XXX:XXX] [fixed in 5.2.9: changed autoconf's -g test to do linking as well.] x pdksh 5.2.8, Solaris 2.5.1 (reported by Stefan Dalibor): 2 tests (xxx-exec-environment-1 and 2) fail because printenv isn't found. [see Mail.XXX:XXX] [fixed in 5.2.9: changed test to use env instead] x pdksh 5.2.8, - (reported by Stefan Dalibor): shell assumes 80 columns when it starts up if COLUMNS is set correctly in the environ. [see Mail.XXX:XXX] [fixed in 5.2.9: fixed so window size is checked at startup] x pdksh 5.2.8, NeXT machines (reported by Kai Wong): clock_t, which lives in sys/time.h, isn't found by configure (causes warning messages). [fixed in 5.2.9: configure now checks in sys/time.h] x pdksh 5.2.3, - (reported by Mike Jetzer): in vi, = on word with ~ but no /, beeps (or prints final path comonent?). [see Mail.9:66] [fixed in 5.2.9: fixed edit.c(add_glob) so no * is appended to ~username] x pdksh 5.1.3, NeXT machines (reported by Jason Baugher): job control doesn't work on NeXT machines (both m68k and x86 based) in rlogin sessions. (caused by open("/dev/tty") failing - rlogin on NeXT doesn't set up controlling tty properly). [see Mail.7:29] [fixed in 5.2.9: added hack to main to get a controlling tty] x pdksh 5.2.8, NeXT 3.2 (reported by Andrew S Townley): the output of the siglist.sh script fills the disk. Also, the signal list generated (by the fixed script) is mostly empty. [see Mail.XXX] [fixed in 5.2.9: fixed siglist.sh script to avoid infinite loops. Added comment to README warning of problem with NeXT's native cc -E] x pdksh 5.2.9, - (reported by Loris Talpo): long prompts are messed up in vi mode. [see Mail.XXX] [fixed in 5.2.9: lex.c(pprompt) was broken] x pdksh 5.2.9, - (reported by Will Renkel): a double backslash followed by a newline in an unquoted here document results in one of the backslashes and the newline being stripped. [see Mail.XXX] [fixed in 5.2.10: fixed backslash-newline processing in lex.c] x pdksh 5.2.9, - (reported by Han Holl): read x?prompt doesn't work on non-interactive shells when the input is from a tty. [see Mail.XXX] [fixed in 5.2.10: changed test in c_read() from FTALKING to isatty] x pdksh 5.2.10, - (reported by Dale DePriest): expanding aliases causes extra input. [see Mail.XXX] [fixed in 5.2.11: fixed syn.c(c_list).] x pdksh 5.2.10, - (reported by John Rochester): window size changes don't happen on Dec unix (osf) because TIOCGWINSZ is defined in not in . [see Mail.XXX] [fixed in 5.2.12: sys/ioctl.h included with termios.h/termio.h if possible] x pdksh 5.2.11, - (reported by Randy Bouzane): aliases in command substitutions result in code dumps. [see Mail.XXX] [fixed in 5.2.12: lex.c(getsc__): break if eof is read] x pdksh 5.2.11, - (reported by Will Renkel): aliases containing ; or aren't fully read/executed. [see Mail.XXX] [fixed in 5.2.12: syn.c(get_command): call inalias()] x pdksh 5.2.11, SGI/IRIX 5.2 (reported by bert@xpilot.com): pipelines containing built in commands hang forever. [see Mail.XXX] [fixed in 5.2.12: fixed pgrp sync code in jobs.c] x pdksh 5.2.11, - (reported by Herbert Thielen via Larry Daffner): shell leaves temp files around when executing shell scripts that have functions with here documents which end in an exec. [see Mail.XXX] [fixed in 5.2.12: call main.c(cleanup_proc_env()) from exec.c(execute()).]