Commit Graph

17 Commits

Author SHA1 Message Date
Dmitry Chagin
55b903e2e0 MFV r315950:
Update vendor/tcsh to git b605cb561d

Vendor changes:

1. PR/471: Daiki Ueno: Delay interpreting arginp until we've processed
our startup files (which can change the NLS environment).

2. Fix type of read in prompt confirmation (eg. rmstar) (David Kaspar).

3. Fix out of bounds read (Brooks Davis)
(reproduce by starting tcsh and hitting tab at the prompt).

4. Don't play pointer tricks that are undefined in modern c
(Brooks Davis).
2017-03-25 14:14:11 +00:00
Dmitry Chagin
19d2e3de75 Update to tcsh 6.20.00 2017-03-25 13:32:28 +00:00
Mark Peek
9ccc37e320 Update to tcsh 6.18.01. 2012-02-22 03:36:15 +00:00
Roman Divacky
e05b498065 Fix tcsh losing history when tcsh terminates because the pty beneath it
is closed.

Diagnosed by Ted Anderson:

New signal queuing logic was introduced in 6.15 and allows the signal handlers
to be run explicitly by calling handle_pending_signals, instead of
immediately when the signal is delivered.  This function is called at
various places, typically when receiving a EINTR from a slow system call
such as read or write.  In the pty exit case, it was called from xwrite,
called from flush, while printing the "exit" message after receiving EOF
when reading from the pty (note that the read did not return EINTR but
zero bytes, indicating EOF).  The SIGHUP handler, phup(), called
rechist, which opened the history file and began writing the merged
history to it.  This process invoked flush recursively to actually write
the data.  In this case, however, the flush noticed it was being called
recursively and decided fail by calling stderror.

My conclusion was that the signal was being handled at a bad time.  But
whether to fix flush not to care about the recursive call, or to handle
the signal some other time and when to handle it, was unclear to me.
However, by adding an extra call to handle_pending_signals, just after
process() returns to main(), I was able to avoid the truncated history
after network outages and similar failures.  I verified this fix in
version 6.17.

Approved by:	ed (mentor)
MFC after:	1 week
2009-10-06 20:19:16 +00:00
Mark Peek
a15e6f9a9a Update to tcsh 6.17.00.
Approved by:	re (kensmith)
2009-07-11 05:35:08 +00:00
Mark Peek
bc49518e16 Flatten vendor/tcsh/dist. 2009-07-10 21:00:38 +00:00
Ruslan Ermilov
3b8bd8e77a Actually fix pty detection for autologout setting.
(The fix has been submitted upstream.)
2008-10-20 08:44:14 +00:00
Mark Peek
5c3ede8519 Import two vendor fixes from tcsh-6.15.01 for MFC to 7.0. The fixes are:
- Fix pty detection for autologout setting
  - kill `foo` got stuck because sigchld was disabled too soon

Requested by: re
2007-10-15 15:23:07 +00:00
Mark Peek
45e5710bbb Import of tcsh-6.15.00 2007-03-11 22:33:41 +00:00
Mark Peek
23338178da Import of tcsh-6.14.00 2005-04-24 19:41:08 +00:00
Mark Peek
b2d5d167ed Import of tcsh-6.13.00 2004-07-11 02:17:56 +00:00
Mark Peek
2930157267 Import of tcsh-6.12.00 2002-07-24 16:23:10 +00:00
Mark Peek
6767bd61d2 Import tcsh-6.11 2001-09-05 17:49:32 +00:00
Kris Kennaway
28ae2e3a2b Import vendor fix for buffer overflow in HOME environment variable 2001-03-03 23:45:43 +00:00
Andrey A. Chernov
3b6eaa7b1e Initial import of slightly trimmed tcsh 6.10 2000-11-30 21:05:33 +00:00
David E. O'Brien
8e66bd9ec8 6.09.01 vendor update. 2000-04-20 04:22:36 +00:00
David E. O'Brien
c80476e4c3 Import the latest version of the 44BSD C-shell -- tcsh-6.09. 2000-04-15 04:41:27 +00:00