Peter Stephenson
cfd91eac07
Rearrange context saving.
...
Variables are now associated with the module that declares them, being
initialised and saved/restored there. However, as many variables are
used for communication between modules, many of them are set in multiple
places, so the assignment is ambiguous.
2015-01-09 21:33:39 +00:00
Peter Stephenson
d067ebcacd
33876: etc.: Separate errors and keyboards interrupts
...
Combination of 12 commits from interrupt_abort branch.
Basic strategy is to introduce bits to errflag and to set and
reset them separately.
Remove interrupt status on return to main keymap.
Turn off ERRFLAG_INT for always block.
Restore bit thereafter: we probably need a new variable in order
to allow user interrupts to be reset in the always block.
Add TRY_BLOCK_INTERRUPT
This works the same as TRY_BLOCK_ERROR, but for a SIGINT, too.
Ensure propagation of SIGINT from exited job.
If received by foreground job, shell uses ERRFLAG_INT, not
ERRFLAG_ERROR, to set the new state.
Reset errflag before precmd()
Add always block in _main_completion to fix ZLS_COLORS
Ensures we get the right state of $ZLS_COLORS at the end of _main_complete
even if there's an interrupt. However, the "right state" is a bit messy
as it depends on styles.
2014-12-11 09:41:17 +00:00
Peter Stephenson
b4f7ccecd9
33531 with additions: retain status of exited background jobs.
...
Add linked list of unwaited-for background jobs.
Truncate at value of _SC_CHILD_MAX discarding oldest.
Remove old lastpid_status mechanism for latest exited process only.
Slightly tighten safety of permanently allocated linked lists so
that this doesn't compromise signal handling.
2014-10-26 17:47:42 +00:00
Barton E. Schaefer
32473f59a3
Merge branch 'master' of git://git.code.sf.net/p/zsh/code
...
Conflicts:
ChangeLog
2014-09-29 17:52:33 -07:00
Peter Stephenson
cf6b0f5663
33285: apply function definition redirections at execution
2014-09-29 21:02:59 +01:00
Barton E. Schaefer
60e31a45b0
33268: interactive shells treat SIGPIPE like SIGHUP if and only if SHTTY is disconnected
2014-09-29 08:59:31 -07:00
Nikolas Garofil
4f4d2b8247
32737, 32736 (32741), 32735, 32734, 32733, 32732 (32739): Strict compilation
...
fixes
Src/utils.c: properly ifdef declarations
Src/zsh_system.h: memmove() should return its dest argument
Src/signals.c: define ret before use
Src/mem.c: remove unused pointers
Src/prototypes.h: use size_t in bcopy()
Src/compat.c: fix const declaration inconsistency
2014-06-07 13:48:40 -07:00
Peter Stephenson
a06cd1766a
32479: POSIXTRAPS and implicit return values.
...
With POSIXTRAPS never propagate implicit return value.
In any case if not forcing a return value don't use lastval
from within the trap, use the one from the surrounding code.
2014-03-14 12:52:41 +00:00
Peter Stephenson
375115c7df
unposted: updates for 4.0.2-test-1.
...
Update references to 4.0.2 to 4.0.3.
Additional mod_export declarations.
Additions to .distfiles.
2013-11-06 19:25:07 +00:00
Peter Stephenson
4b86cc48f7
30726: make shell options passed to emulate stick along with the emulation
2012-10-11 20:14:01 +00:00
Bart Schaefer
748bd73d88
unposted: cross-reference zmodload from the modules intro doc.
...
29769: follow-up 29677 to handle the case where thisjob == -1.
2011-09-25 18:09:13 +00:00
Bart Schaefer
516ea294b8
29677: Do not allow external processes in a pipeline to become suspended
...
when the end of the pipe is controlled by a builtin in the current shell
which cannot itself become suspended.
2011-08-14 18:34:27 +00:00
Peter Stephenson
a3ae9f5d12
29643: set incompfunc to zero when executing hook or trap function
2011-08-04 08:30:50 +00:00
Bart Schaefer
98b29d02ca
29481: always return a matching job in findproc() but scan the whole list
...
to prefer running jobs
2011-06-15 15:38:14 +00:00
Peter Stephenson
3b6b4982b9
28258: fix undefined variable in traps
2010-09-14 12:52:31 +00:00
Peter Stephenson
ade705cf5b
28253: document -h argument to atribute commands
2010-09-12 18:56:40 +00:00
Peter Stephenson
c7ff1b79dd
28179, users/15314, users/15310, users/15200:
...
various job and process control fixes
2010-08-22 20:08:57 +00:00
Peter Stephenson
09960dc5b9
27951: Add $ZSH_EVAL_CONTEXT and $zsh_eval_contxt
2010-05-12 10:06:59 +00:00
Peter Stephenson
3206b8a2ea
27442 plus tweak: wait returns status for $! even if exited
2009-12-02 09:46:12 +00:00
Bart Schaefer
bda90c969f
27159: restore pre-23067 behavior of SIGINT outside a "wait", so that
...
foreground jobs that handle or ignore interrupts are not orphaned.
2009-07-20 04:38:56 +00:00
Peter Stephenson
73be7ee553
27106: reset status on command that expands to empty
...
27122: add POSIX_JOBS option
2009-07-10 11:08:39 +00:00
Peter Stephenson
c7d8b0dfb8
26546, 26556: sticky emulation for functions defined in emulate ... -c ...
...
environments, plus documentation
2009-02-11 20:42:15 +00:00
Peter Stephenson
e3fd25b181
25775: fix logical problem with function line numbering inside eval-style traps
2008-09-29 21:46:58 +00:00
Peter Stephenson
b2d08a2155
25744: dynamic named directories and further doshfunc() simplification
2008-09-26 09:11:27 +00:00
Peter Stephenson
2920c227d3
25677: add %x and %I prompt escapes for shell source code debugging
...
tidy up interface to doshfunc()
2008-09-16 15:02:01 +00:00
Peter Stephenson
2853ca830a
25247 with further modifications: add $funcsourcetrace
2008-08-11 19:22:54 +00:00
Peter Stephenson
2706eac454
25415: Make DEBUG_BEFORE_CMD the default.
...
Reuse ERR_EXIT in DEBUG traps.
Clean up trapreturn code.
2008-08-07 16:25:14 +00:00
Peter Stephenson
506d73299c
fix problems with trapreturn, in particular in source inside trap
2008-08-01 13:53:43 +00:00
Peter Stephenson
0c9830d23c
25345, 25347: neaten interface from main shell to zle
2008-07-31 08:44:16 +00:00
Peter Stephenson
a9ad660bd3
users/12812: fix hang with confusion over process numbers
2008-05-02 22:48:58 +00:00
Peter Stephenson
6e5279f8b4
Guillaume Chazarain: 23364: fix race in POSIX signal blocking
...
by using local variables
2007-05-01 09:35:04 +00:00
Wayne Davison
914364061e
Mark an arg as UNUSED().
2007-01-26 19:18:37 +00:00
Peter Stephenson
b4a7ad8269
23101: various combinations of ZERR with function returns were feature-ridden
2007-01-12 23:10:15 +00:00
Peter Stephenson
8b800f8fd1
document OS may handle negative or zero PID in kill
2006-12-19 10:35:54 +00:00
Peter Stephenson
dd5602f59b
22474: use variable argument lists to improve error message handling
2006-05-30 22:35:03 +00:00
Wayne Davison
4cb83571c4
Changed some structures to avoid gcc's type-punned warnings.
2006-03-07 21:30:36 +00:00
Peter Stephenson
31f6b3fb07
22317: exit status from code backgrounded in function
...
22277, 22281, tweaks: standardize behaviour of wait builtin
with trapped signals
2006-03-02 22:05:21 +00:00
Bart Schaefer
174ad4a80f
21814: error handling for traps in "always" constructs.
2005-12-15 04:24:04 +00:00
Peter Stephenson
2c208c7743
21197: Fix LOCAL_TRAPS inside another trap
2005-04-27 09:58:42 +00:00
Peter Stephenson
05b06b1c08
fix autoloaded trap bug; rejig use of trapfuncs
...
(now traplists); improve trap tests
2005-02-06 20:36:09 +00:00
Peter Stephenson
88a37cc187
c.f. 20675: improve zle as a basis for Unicode.
...
unposted: update version to 4.2.3-dev-1
2005-01-14 13:04:47 +00:00
Peter Stephenson
138c5df2bb
20576: fix core dump on TRAPEXIT
2004-11-23 16:29:50 +00:00
Peter Stephenson
5141e68daa
20572: Allow alternative signal names
2004-11-22 10:33:03 +00:00
Peter Stephenson
8a67a66a61
20467: Reintroduce rusage-based escapes for TIMEFMT.
2004-10-08 14:36:51 +00:00
Peter Stephenson
cc72740775
20462: Use getrusage for timing again.
...
Time processes from before rather than after fork.
2004-10-07 09:45:43 +00:00
Peter Stephenson
640bbab78f
20221: $LINENO in trap '...' DEBUG was wrong.
2004-07-29 15:09:51 +00:00
Peter Stephenson
17e576782c
20198: fix TRAPEXIT.
2004-07-26 13:18:07 +00:00
Peter Stephenson
885509c023
Fix TRAPS_ASYNC so that it handles signals correctly.
2004-05-02 19:55:54 +00:00
Peter Stephenson
5747147aff
19809: improve NO_TRAPS_ASYNC by queueing traps alone
2004-04-21 11:18:45 +00:00
Peter Stephenson
b5ceb73026
zsh-users/7365: new TRAPS_ASYNC option
2004-04-19 16:02:17 +00:00