contrib: "set -e" behaves weird in subshells followed by OR. don't use.
This exits as expected:
```
$ cat s1.sh
#!/bin/bash
set -e
(
echo "a"
false
echo "b"
)
$ ./s1.sh
a
```
This does NOT exit, seemingly because of the outer context?!
```
$ cat s2.sh
#!/bin/bash
set -e
(
echo "a"
false
echo "b"
) || echo "c"
$ ./s2.sh
a
b
```
ref https://unix.stackexchange.com/questions/65532/why-does-set-e-not-work-inside-subshells-with-parenthesis-followed-by-an-or
This commit is contained in:
@@ -181,7 +181,7 @@ info "finalizing AppDir."
|
||||
mv usr/include usr/include.tmp
|
||||
delete_blacklisted
|
||||
mv usr/include.tmp usr/include
|
||||
) || fail "Could not finalize AppDir"
|
||||
)
|
||||
|
||||
info "Copying additional libraries"
|
||||
(
|
||||
|
||||
Reference in New Issue
Block a user