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