1 # --- T2-COPYRIGHT-NOTE-BEGIN ---
2 # This copyright note is auto-generated by ./scripts/Create-CopyPatch.
4 # T2 SDE: package/.../pdksh/pdksh-5.2.14-2.patch
5 # Copyright (C) 2004 - 2005 The T2 SDE Project
6 # Copyright (C) 1998 - 2003 ROCK Linux Project
8 # More information can be found in the files COPYING and README.
10 # This patch file is dual-licensed. It is available under the license the
11 # patched project is licensed under, as long as it is an OpenSource license
12 # as defined at http://www.opensource.org/ (e.g. BSD, X11) or under the terms
13 # of the GNU General Public License as published by the Free Software
14 # Foundation; either version 2 of the License, or (at your option) any later
16 # --- T2-COPYRIGHT-NOTE-END ---
19 [ ftp://ftp.cs.mun.ca/pub/pdksh/pdksh-5.2.14-patches.2 ]
21 --- ./exec.c.a Mon Jan 29 10:02:13 2001
22 +++ ./exec.c Mon Jan 29 10:06:57 2001
27 + volatile int rv_prop = 0; /* rv being propogated or newly generated? */
34 rv = execute(t->left, flags|XFORK);
40 rv = execute(t->right, flags & XERROK);
50 rv = 0; /* in case of a continue */
52 if (t->type == TFOR) {
54 setstr(global(t->str), *ap++, KSH_SS_UNWIND_ERROR);
57 if (!(cp = do_selectargs(ap, is_first))) {
64 rv = 0; /* in case of a continue */
65 while ((execute(t->left, XERROK) == 0) == (t->type == TWHILE))
66 rv = execute(t->right, flags & XERROK);
72 rv = execute(t->left, XERROK) == 0 ?
73 execute(t->right->left, flags & XERROK) :
74 execute(t->right->right, flags & XERROK);
82 rv = execute(t->left, flags & XERROK);
87 rv = execute(t->left, flags & XERROK);
93 * (allows "ls -l | time grep foo").
95 rv = timex(t, flags & ~XEXEC);
99 case TEXEC: /* an eval'd TCOM */
101 quitenv(); /* restores IO */
103 unwind(LEXIT); /* exit child */
104 - if (rv != 0 && !(flags & XERROK)) {
105 + if (rv != 0 && !rv_prop && !(flags & XERROK)) {