Michael J Gruber <git@xxxxxxxxxxxxxxxxxxxx> writes: > I don't think this has any adverse side effects, but I'm begging for > another set of eyeballs to have a look. (Test suite passes, of course.) The lazy prereqs are designed to be used lazily, in any test that he who wrote lazy-prereq did not anticipate. It is run inside a subshell to make it absolutely sure that whatever it does (like use of shell variables, chdir around) will not be able to affect _any_ calling context that is not anticipated by who writes lazy prerequisite. Please don't do this. > > t/test-lib-functions.sh | 6 ++++-- > 1 file changed, 4 insertions(+), 2 deletions(-) > > diff --git a/t/test-lib-functions.sh b/t/test-lib-functions.sh > index 8889ba5..e587902 100644 > --- a/t/test-lib-functions.sh > +++ b/t/test-lib-functions.sh > @@ -246,13 +246,15 @@ test_lazy_prereq () { > test_run_lazy_prereq_ () { > script=' > mkdir -p "$TRASH_DIRECTORY/prereq-test-dir" && > -( > +{ > cd "$TRASH_DIRECTORY/prereq-test-dir" &&'"$2"' > -)' > +}' > say >&3 "checking prerequisite: $1" > say >&3 "$script" > + orig_pwd="$(pwd)" > test_eval_ "$script" > eval_ret=$? > + cd "$orig_pwd" > rm -rf "$TRASH_DIRECTORY/prereq-test-dir" > if test "$eval_ret" = 0; then > say >&3 "prerequisite $1 ok" -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html