[PATCH V5] update: warn if cwd was deleted
Stanislau Hlebik
stash at fb.com
Tue Oct 25 09:19:08 EDT 2016
The fix is not that important so I think it’s fine to revert it if it causes troubles.
On 10/24/16, 11:20 PM, "Danek Duvall" <danek.duvall at oracle.com> wrote:
Stanislau Hlebik wrote:
> diff --git a/tests/test-rebase-scenario-global.t b/tests/test-rebase-scenario-global.t
> --- a/tests/test-rebase-scenario-global.t
> +++ b/tests/test-rebase-scenario-global.t
> @@ -758,6 +758,8 @@
> $ hg commit -m 'second source with subdir'
> $ hg rebase -b . -d 1 --traceback
> rebasing 2:779a07b1b7a0 "first source commit"
> + current directory was removed
> + (consider changing to repo root: $TESTTMP/cwd-vanish)
> rebasing 3:a7d6f3a00bf3 "second source with subdir" (tip)
> saved backup bundle to $TESTTMP/cwd-vanish/.hg/strip-backup/779a07b1b7a0-853e0073-backup.hg (glob)
>
> diff --git a/tests/test-update-names.t b/tests/test-update-names.t
> --- a/tests/test-update-names.t
> +++ b/tests/test-update-names.t
> @@ -72,3 +72,15 @@
> $ cd ..
>
> #endif
> +
> +Test that warning is printed if cwd is deleted during update
> + $ hg init r4 && cd r4
> + $ mkdir dir
> + $ cd dir
> + $ echo a > a
> + $ echo b > b
> + $ hg add a b
> + $ hg ci -m "file and dir"
> + $ hg up -q null
> + current directory was removed
> + (consider changing to repo root: $TESTTMP/r1/r4)
So these tests are causing problems on Solaris. Our rmdir() returns EINVAL
when trying to remove the cwd, even if you're not specifically trying to
remove "." (at least on ZFS). That error is caught silently handled
elsewhere, though it does leave the directory behind once the command is
complete. But it does mean that when we get to the getcwd(), the directory
is still there, so the error doesn't happen.
I'm not entirely sure what to do here. I'm also not really sure what the
driver for this fix was, so I'm not sure if suggesting something like
dropping the warning in favor of silently chdir()ing to the repo root would
be sufficient.
Thoughts?
Thanks,
Danek
More information about the Mercurial-devel
mailing list