home *** CD-ROM | disk | FTP | other *** search
- Tue Aug 31 20:32:54 1993 Simon J. Gerraty (sjg@zen.void.oz.au)
-
- * patch from meulenbr@prl.phil to avoid problem in findcom().
-
- Tue Jun 1 23:36:36 1993 Simon J. Gerraty (sjg@zen.void.oz.au)
-
- * Quick hack to "handle" multi-line prompts better.
- While in x_vi or x_emacs we use only the last line of the prompt.
-
- Tue Jun 1 20:52:04 1993 Devetir Unix section <sgccdux@citecuc.citec.oz.au>
-
- * Serveral bug fixes from: Devetir Unix section
- <sgccdux@citecuc.citec.oz.au>
-
- Sorry for the delay in these, but they were stuck in transit
- because zen was dead for nearly 3 months! --sjg
-
- 1) In history.c:hist_init(), an extra file descriptor to the
- history file is created which can remain open to the old history
- file when the history needs shrinking. Thus, the old history file
- survives with no name, and caused me trouble under 386BSD when
- shutting down suddenly (fsck had to clean it up and have another
- re-boot).
-
- 2) In jobs.c:exchild() changed order of setpgid() and tcsetpgrp()
- as 386bsd at least does not allow tcsetpgrp() to an unused
- process group.
-
- 3) bug in jobs.c:j_reapchld(), waitpid() can return 0 if there
- are no children, and even though there was code there to exit the
- loop on pid == 0, the variable sigchld_caught was not being set to
- 0, so j_reapchld() would be continually called from j_waitj()
- wasting considerable cpu time.
-
- 4) In jobs.c:j_resume(), fg of a job that has exited, but not yet
- been flushed from pdksh's list of jobs caused the controlling
- terminal's process group to be stuffed up, and pdksh to exit, on
- some machines.
-
-
- Sat May 22 21:58:49 1993 Simon J. Gerraty (sjg@zen.void.oz.au)
-
- * mail.c, expr.c: bug fixes from: Carsten Heyl
- <ch@jenny.informatik.uni-dortmund.de>
-
- * eval.c: bug fix from: Peter Collinson <pc@hillside.co.uk>
-
-
- Sat May 8 15:48:16 1993 Simon J. Gerraty (sjg@zen.void.oz.au)
-
- * Ported to 386bsd (new base system :-), only sh directory
- involved though. This mainly involved re-arranging some #if's so
- that if _POSIX_TERM is defined it will take precedence over _BSD
-
- Sat Dec 5 23:54:40 1992 Simon J. Gerraty (sjg@zen)
-
- * finally fixed the fd leakage that caused pipes to not terminate
- immediately.
-
- Sat Nov 28 23:01:38 1992 Simon J. Gerraty (sjg@zen)
-
- * Makefile: added install target
-
- Wed Nov 25 09:10:11 1992 Simon J. Gerraty (sjg@zen)
-
- * c_cd(c_ksh.c): fixed bug causing cd ., cd .. to look at $CDPATH.
-
- Thu Nov 19 23:32:42 1992 Simon J. Gerraty (sjg@zen)
-
- * For now bind emacs mode complete-list to ESC=
-
- Tue Sep 15 15:24:38 1992 Simon J. Gerraty (sjg@zen)
-
- * main.c: call init_editmode() between processing .profile and
- .kshrc so that edit mode can be explicitly set in .kshrc
- regardless of FCEDIT, EDITOR and VISUAL values.
-
- Tue Sep 15 15:08:06 1992 Philippe Michel (michel@thomson-lcr.fr)
-
- * main.c: fixed bug in command line argument processing.
-
- Fri Aug 21 15:24:37 1992 Bruce Momjian (root%candle.uucp@bts.com)
-
- * exec.c: replace all calls of execute(tree, 0) with
- execute(tree, flags & XXWHL) to ensure it is passed to children.
-
- Thu Aug 20 23:18:45 1992 Simon J. Gerraty (sjg@zen)
-
- * fixed bug in complex_history: histsize not initialized before
- call to alloc().
-
- Thu Aug 13 00:00:42 1992 Simon J. Gerraty (sjg@zen)
-
- * setstr(), varsub(): be robust when given dud args.
-
- Wed Aug 12 23:56:29 1992 Simon J. Gerraty (sjg@zen)
-
- * Fixed build problem when COMPLEX_HISTORY is not defined.
- * don't make COMPLETE_LIST the default, add
- bind '^[^['=complete-list
- in .kshrc if desired.
-
-
- Mon Aug 3 22:41:17 1992 Simon J. Gerraty (sjg@zen)
-
- * emacs.c: correctly bind <ESC><erase>.
- * var.c: treat COLUMNS and FCEDIT as special.
-
- Sat Aug 1 17:17:02 1992 Simon J. Gerraty (sjg@zen)
-
- * Incorporated massive contribution from Peter Collinson
- includes new features (refer to ../Changes.pc) and support for
- BSDI's BSD/386.
-
- * emacs.c: new command complete-list provided by
- Neil.Smithline@eng.sun.com this nicer than the standard ksh
- file completion. Define COMPLETE_LIST to bind this to <ESC><ESC>
- by default.
-
- Sat May 30 15:44:56 1992 Simon J. Gerraty (sjg@zen)
-
- * added flag XXWHL in tree.h, used by execute() when calling
- exchild() to indicate that stdin should not be invalidated. This
- corrects handling of:
- ls | while read f; do ls -l $f; done
-
- Thanks to Bruce Momjian for tracking down the fault.
-
- Tue May 12 19:23:17 1992 Simon J. Gerraty (sjg@zen)
-
- * Fix bug in init_editmode() if EMACS and VI are not both defined.
-
- Sun May 3 17:47:54 1992 Simon J. Gerraty (sjg@zen)
-
- * sigact.c: allow force build if USE_* defined.
- * main.c: call init_editmode() _after_ processing /etc/profile.
- * jobs.c: ensure SA_RESTART is defined.
-
- Sat Apr 25 00:20:51 1992 Simon J. Gerraty (sjg@zen)
-
- * Implemented a simple history file.
- The default file is "$HOME/.pdksh_hist" but can be changed by
- setting HISTFILE in any of /etc/profile,.profile or .kshrc.
- The format is trivial - one line per history item.
- You can creat a set history file, by making it read-only.
- History is only saved during wrap-up and only if the file is
- writeable. NOTE: if writeable the file is OVERWRITTEN.
-
- Fri Apr 24 22:22:04 1992 Simon J Gerraty (sjg@zen)
-
- * sigact.c: New file.
- An implementation of sigaction() and freinds, which simply
- interfaces to BSD's setsigmask() et al, BSD4.1's setsig() or plain
- old signal(2). It attempts to use the most useful available.
- If it thinks the system really has sigaction() it compiles to
- noting, and its header sigact.h does nothing.
- At present all use of sigaction is bounded by USE_SIGACT, if/when
- this approach appears to work, the alternatives will be withdrawn.
-
- Fri Apr 24 10:42:40 1992 Simon J Gerraty (sjg@taureau)
-
- * Added support for sigaction and friends!, turns out sigset()
- et al just don't handle job control. Define USE_SIGACT if you
- have sigaction(). Job control now works on this System V machine
- (Bull DPX/2).
-
- * getsc_(lex.c), x_getc(edit.c): Added goto's! to allow the
- read() calls to be retried (on systems that don't do it
- automatically) if the read() was interrupted by a SIGCHLD
- (sigchld_caught > 0). This was the cause of the problem with an
- async child terminating the shell on System V.
-
- Wed Apr 22 14:57:01 1992 Simon J Gerraty (sjg@taureau)
-
- * exchild(jobs.c): block SIGCHLD when fork()ing, until safe to
- receive.
-
- * Added support? for sigset() and friends. Allow JOBS to work on
- System V machines. This does NOT work right yet.
- With JOBS defined, an async process terminates the shell when it
- (the child) exits, and ^Z does nothing!
-
- Tue Apr 21 15:18:08 1992 Simon J. Gerraty (sjg@sun0)
-
- * removed const qualifyer from setctypes() 1st arg, as gcc-2.1
- generates incorrect code for this function. This is a temperary
- hack until gcc is fixed.
-
- * do not install std/stdc/stdarg.h in std/h, any compiler that
- will use stdarg.h should have one.
-
- Sun Apr 19 20:16:32 1992 Simon J. Gerraty (sjg@zen)
-
- * added support of stdargs to tree.c and _fixed_ the use of
- varargs.
-
- Sat Apr 18 16:35:48 1992 Simon J. Gerraty (sjg@zen)
-
- * x_read(edit.c): added logic to check $EDITOR etc.
-
-
- Fri, 10 Jan 92 13:13:52 Bullseye Software (sumax!polari!bullseye)
-
- * alloc.c:afreeall() references memory it has already deallocated.
-
- Wed, 1 Jan 92 20:03:55 Bert Gijsbers (a430mcb1@diamond.sara.nl)
-
- * expand(eval.c): PS1='${PWD##/*/}[!]% ' prints also characters
- with ascii = 128
-
- * main(main.c): Testing whether the first letter of argv[0] is a
- '-' does not work when ksh reads .kshrc.
-
- Sun, 29 Dec 91 20:05:02 Bert Gijsbers (a430mcb1@diamond.sara.nl)
-
- * Support for Minix.
-
- Wed, 11 Dec 91 12:41:31 Kees J. Bot (kjb@cs.vu.nl)
-
- * fixes for sun3 with 4.1.1
-
- Wed, 4 Dec 91 15:53:43 Reg Quinton (reggers@julian.uwo.ca)
-
- * fixes for SGI
-
- Mon Nov 25 12:36:42 1991 Simon J. Gerraty (sjg at zen)
-
- * stdh.h: make sure FD_CLEXEC is defined if we support F_SETFD.
-
- * emacs.c: Attempt to make alloc() of x_tab acceptible to more
- compilers. Not 100% yet.
-
- Sat Nov 23 14:31:44 1991 Simon J. Gerraty (sjg at zen)
-
- * Improved fd_clexec handling for systems that don't have
- an F_SETFD fcntl(). The new arrangement will not blow up if an
- attempt is made to fd_clexec a fd above MAXFD (64 by default).
- main.c:main() and io.c:savefd() now simply call
- exec.c:fd_clexec().
-
- Fri Nov 22 11:24:57 1991 Simon J. Gerraty (sjg at zen)
-
- * Since many people had problems using the headers and libraries
- in std/*, modified sh/* so that they can be compiled in the
- absence of std/*. This requires putting in some fixes that I had
- left out from my 3.2 version. Particularly, catering for systems
- that do not have F_SETFD.
-
- * exec.c:
- Added fd_clexec array for tracking fd's to close in child after
- fork(). This is avoid wasting fd's on systems that don't have
- F_SETFD.
-
- * jobs.c:
- Allow Sun's and perhaps other BSD systems to define WAIT_T to be
- union wait and thus use their native status handling for children.
-
- * The file sh/MACHINES now tracks systems the shell has been
- compiled on.
-
-
- Sat Nov 9 14:57:30 1991 Simon J. Gerraty (sjg at zen)
-
- * Release version 4.1 as a new base line.
-
- Thu Nov 7 23:11:25 1991 Simon J. Gerraty (sjg at zen)
-
- * John R MacMillan suppied a fix for a bug in yylex() that was the
- cause of several odd problems such as:
- $ foo=echo
- $ $foo bar
- bar: not found
- $ pwd
- $ /local/src/pdksh
- $ $foo bar
- bar
- $
-
- Sun Sep 15 23:19:27 1991 Simon J. Gerraty (sjg at zen)
-
- * emacs.c:
- Added function x_lastcp() which returns a pointer to that char in
- the edit buffer that will be the last displayed on the screen.
- Thus:
-
- cp = x_lastcp();
- while (cp > xcp)
- x_bs(*--cp);
-
- Will correctly position the cursor on the screen (regardless of
- TABs etc in the buffer). The previous method got out of sync if
- there were any TABs to display.
-
- Wed Aug 7 11:26:55 1991 Simon J. Gerraty (sjg at sun0)
-
- * jobs.c:
- The Sun SPARCstation 2 was proving extremely unreliable using ksh.
- After puting traces in jobs.c, it turns out the problem was
- multiple SIGCHLD events happening too quickly causing the handler
- to be interupted and thus not recognise the job that it had just
- reaped was one of its own. Having done the waitpid(), but not
- adjusted the job table entry, j_waitj() would loop forever waiting
- for a job to finnish (that had already done so!)
- Solution was to have the SIGCHLD handler simply record the events
- by inrcrementing sigchld_caught. The actual reaping is now done
- in a new funtion j_reapchld(), which does what the old signal
- handler did but blocks SIGCHLD while scanning the job table.
- j_waitj() calls j_reapchld() when sigchld_caught is non-zero.
- The SS2 is now much more reliable...
-
- * trace.c:
- Added my simple _TRACE facility (used to track the j_waitj
- problem). Simply -DUSE_TRACE for it to have effect. If USE_TRACE
- is undefined, calls to _TRACE() expand to while(0) which an
- optimizer will usually remove. sh.h now includes trace.h
-
- Mon Jun 10 10:27:14 1991 Simon J. Gerraty (sjg at zen)
-
- * emacs.c:
- A couple of assignments (xbp = xbuf) were not migrated from the
- 3.2 version. Caused an anoying bug when retrieving history
- commands.
-
- Mon May 27 12:50:20 1991 Simon J. Gerraty (sjg at sun0)
-
- * added fixes supplied by Mike Jetzer:
- These relate mainly to vi mode. See Changes.mlj
-
- * c_sh.c c_exit():
- Modified behavior to not imediately exit if there are stopped
- jobs. A subsequent exit will kill any jobs left and terminate the
- shell.
-
- Fri May 24 15:20:10 1991 Simon J. Gerraty (sjg at sun0)
-
- * edit.h:
- Cleaned up prototypes. Built shell on sun3.
- While gcc-1.39 builds the ksh ok on the 386i, on the sun3 jobs
- don't work correctly - any non-builtin command gets stopped and
- put into the background. Had same problem with 3.2, using
- /usr/bin/cc works fine.
-
- Thu May 23 13:45:20 1991 Simon J. Gerraty (sjg at sun0)
-
- * migrated my 3.2 edit.c changes to the new shell.
- Affects edit.c, emacs.c
- Added edit.h which is now included by edit.c,emacs.c and vi.c
-
- * vi.c:
- Fixed handling of '!' in prompt by using pprompt() as in emacs.c
-
- * std/stdc/vprintf.c:
- Fixed bug in output of left '0' padded unsigned numbers was
- always padding with ' ' which left a space in ksh's temp file
- names. This prevented fc -l from working.
-
- Here is my 3.2 ChangeLog:
- Fri Mar 22 16:50:14 1991 Simon J. Gerraty (sjg at sun0)
-
- * edit.c:
- Added x_set_arg() and x_prev_histword().
- x_set_arg() handles 'ESC''0-9' type args which are used by word
- related commands.
- x_prev_histword() recovers the last (default) or sepcified arg
- word from the previous command line. Bound to ESC. and ESC_ to be
- compatible with real ksh.
-
- Tue Feb 26 14:16:17 1991 Simon J. Gerraty (sjg at zen)
-
- * edit.c:
- Changes to handle editing of command lines longer than $COLUMNS in
- a manner compatible with real ksh.
-
- Mon Feb 25 12:20:36 1991 Simon J. Gerraty (sjg at sun0)
-
- * var.c,table.h:
- Implemented $RANDOM
- Some scripts use [ "$RANDOM" != "$RANDOM" ] to check for ksh.
-
- Wed Feb 20 12:20:36 1991 Simon J. Gerraty (sjg at sun0)
-
- Changes so that shell will compile on sun386i.
-
- * exec.c,main.c,io.c:
- Handle the case where FD_CLEXEC isn't defined.
-
- * jobs.c:
- SunOS has its own ideas about job status etc.
-
- * tree.c:
- Fixed conflict between varargs and stdarg.
-
-
-
-
-