1
0
Fork 0
mirror of git://git.code.sf.net/p/zsh/code synced 2025-09-04 10:41:11 +02:00
Commit graph

75 commits

Author SHA1 Message Date
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