On 05/22/2017 02:04 PM, Gisle Vanem wrote:
> Tim Rühsen wrote:
>
>> Built on MinGW / Win32 the same open sets errno to EACCES.
>>
>>
>> We currently use a work-around like
>> + int rc = open(pathname, flags, mode);
>> +#ifdef _WIN32
>> + if (rc < 0 && errno == EACCES) {
>> + DWORD attrs = GetFileAttributes(pathname);
>> + if (attrs & FILE_ATTRIBUTE_DIRECTORY)
>> + errno = EISDIR;
>> + }
>> +#endif
>
> MSDN says:
> If the function fails, the return value is INVALID_FILE_ATTRIBUTES.
>
> which is ((DWORD)-1). So the test should better be:
>
> if (attr != INVALID_FILE_ATTRIBUTES && (attrs &
> FILE_ATTRIBUTE_DIRECTORY))
> errno = EISDIR;
> Thanks for your correction. I'll amend the code for Wget2 respectively. With Best Regards, Tim
signature.asc
Description: OpenPGP digital signature
