[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: one more failure on Solaris 10
From: |
Jim Meyering |
Subject: |
Re: one more failure on Solaris 10 |
Date: |
Wed, 18 Nov 2009 15:08:22 +0100 |
Eric Blake wrote:
> According to Jim Meyering on 11/18/2009 6:58 AM:
>>>> which suggests this code in test-futimens.h
>>>> needs to handle ENOTDIR:
>>> Actually, this was a regression, caused when you disabled the futimens
>>> fallback on the 8th.
>>
>> Really?
>> This seems to be the change you're talking about:
>> http://git.savannah.gnu.org/cgit/gnulib.git/commit/?id=26c5fd742f9136e2ddbd4
>
> Yep.
>
>> How could that cause a problem?
>
> Because utimens.c no longer has a way to set fd timestamps on Solaris, but
> skips all code paths that set errno to ENOSYS, leaving errno stuck at
> whatever it was prior to the futimes call.
I see it now.
The point is that on Solaris, what I removed was *not* an invalid
use of futimesat. They add a sentence making the NULL file name valid:
int futimesat(int fildes, const char *path, const struct timeval times[2]);
...
If path is a null pointer, futimesat() sets the access and
modification times on the file referenced by fildes.