Re: [PATCH] scalar: make enlistment delete to work on all POSIX platforms
- From
Junio C Hamano <gitster@pobox.com>
- Date
- May 17, 2024, 20:49 UTC
- Message-ID
- <xmqqbk54go51.fsf@gitster.g>
- In-Reply-To
- <Zkds81OB7C5bTCl_@telcontar>
Marcel Telka <marcel@telka.sk> writes:
Show 8 quoted lines
> The ability to remove the current working directory is not guaranteed by > POSIX so it is better to go out of the directory we want to delete on > all platforms unconditionally. > > Signed-off-by: Marcel Telka <marcel@telka.sk> > --- > scalar.c | 4 ---- > 1 file changed, 4 deletions(-)
Let's CC a few folks that had their hands in the delete_enlistment() function over the years for their opinions on this change.
Show 29 quoted lines
> diff --git a/scalar.c b/scalar.c
> index 7234049a1b..331b91dbdb 100644
> --- a/scalar.c
> +++ b/scalar.c
> @@ -361,16 +361,13 @@ static char *remote_default_branch(const char *url)
>
> static int delete_enlistment(struct strbuf *enlistment)
> {
> -#ifdef WIN32
> struct strbuf parent = STRBUF_INIT;
> size_t offset;
> char *path_sep;
> -#endif
>
> if (unregister_dir())
> return error(_("failed to unregister repository"));
>
> -#ifdef WIN32
> /*
> * Change the current directory to one outside of the enlistment so
> * that we may delete everything underneath it.
> @@ -385,7 +382,6 @@ static int delete_enlistment(struct strbuf *enlistment)
> return res;
> }
> strbuf_release(&parent);
> -#endif
>
> if (have_fsmonitor_support() && stop_fsmonitor_daemon())
> return error(_("failed to stop the FSMonitor daemon"));