[PATCH 04/11] test-chmtime: work around Windows limitation
- From
Steffen Prohaska <prohaska@zib.de>
- Date
- May 31, 2009, 16:15 UTC
- Message-ID
- <1243786525-4493-5-git-send-email-prohaska@zib.de>
- In-Reply-To
- <1243786525-4493-4-git-send-email-prohaska@zib.de>
From: Johannes Schindelin <johannes.schindelin@gmx.de>
Windows has problems changing the mtime when the file is write protected, even by the owner of said file.
Add a Windows-only workaround to change the mode if necessary before trying to change the mtime.
Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de> Signed-off-by: Steffen Prohaska <prohaska@zib.de> --- test-chmtime.c | 9 +++++++++ 1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/test-chmtime.c b/test-chmtime.c index d5358cb..fe476cb 100644 --- a/test-chmtime.c +++ b/test-chmtime.c @@ -87,6 +87,15 @@ int main(int argc, const char *argv[]) return -1; } +#ifdef WIN32 + if (!(sb.st_mode & S_IWUSR) && + chmod(argv[i], sb.st_mode | S_IWUSR)) { + fprintf(stderr, "Could not make user-writable %s: %s", + argv[i], strerror(errno)); + return -1; + } +#endif + utb.actime = sb.st_atime; utb.modtime = set_eq ? set_time : sb.st_mtime + set_time;
-- 1.6.3.1.54.g99dd