On Sun, Apr 23, 2017 at 09:02:41PM -0700, Junio C Hamano wrote: > >> That looks fine, assuming the answer to the "is the cwd important" > >> question is "no". > > > > And I do think the answer would be "yes", unfortunately. There are > > systems that do not even allow a file to be removed while it is > > open, so... > > In addition to "some platforms may not want cwd removed", this > directory would be where test_at_end_hook_ will be running in, so > we'd better be consistent with the current behaviour. Good point. There's only one caller, but it does care about being in that directory. > Second try that hopefully is much less damaging > > t/test-lib.sh | 13 ++++++++----- > 1 file changed, 8 insertions(+), 5 deletions(-) > > diff --git a/t/test-lib.sh b/t/test-lib.sh > index cb0766b9ee..4e8f511870 100644 > --- a/t/test-lib.sh > +++ b/t/test-lib.sh > @@ -760,12 +760,15 @@ test_done () { > say "1..$test_count$skip_all" > fi > > - test -d "$remove_trash" || > - error "Tests passed but trash directory already removed before test cleanup; aborting" > + if test -z "$debug" > + then > + test -d "$TRASH_DIRECTORY" || > + error "Tests passed but trash directory already removed before test cleanup; aborting" > > - cd "$(dirname "$remove_trash")" && > - rm -rf "$(basename "$remove_trash")" || > - error "Tests passed but test cleanup failed; aborting" > + cd "$(dirname "$TRASH_DIRECTORY")" && > + rm -fr "$TRASH_DIRECTORY" || > + error "Tests passed but test cleanup failed; aborting" > + fi Yeah, that looks good to me. -Peff