Re: [PATCH v4 24/27] prune: strategies for linked checkouts
- From
Torsten Bögershausen <tboegi@web.de>
- Date
- Mar 1, 2014, 17:12 UTC
- Message-ID
- <5312151B.6080605@web.de>
- In-Reply-To
- <1393675983-3232-25-git-send-email-pclouds@gmail.com>
On 2014-03-01 13.13, Nguyễn Thái Ngọc Duy wrote: []
Show 10 quoted lines
>
> +static dev_t get_device_or_die(const char *path)
> +{
> + struct stat buf;
> + if (stat(path, &buf))
> + die_errno("failed to stat '%s'", path);
> + /* Ah Windows! Make different drives different "partitions" */
> + if (is_windows())
> + buf.st_dev = toupper(real_path(path)[0]);
> + return buf.st_dev;Is this only related to Windows ? Do we have other file systems, which return st_dev == 0 ? Should we check that path[0] != '/', or better !is_dir_sep(path[0]) ? Do we need has_dos_drive_prefix() ?
As a first suggestion, would this be better:
> + if (!buf.st_dev) > + buf.st_dev = toupper(real_path(path)[0]);
(End of loose thinking)