on windows nl-filesys.c's isFile has a bug
Posted: Sat Mar 15, 2014 10:05 am
stat return -1 for string like "d:". But in isFile isDirectory "d:/" is changed to "d:" before transfer to stat, we should check before temporary replace last \ or / to NUL.
maybe change
if (slash == '\\' || slash == '/')
*(fileName + len - 1) = 0;
to
if ((slash == '\\' || slash == '/') && (! (len >= 2 && *(fileName + len - 2) == ':')))
*(fileName + len -1) = 0;
maybe change
if (slash == '\\' || slash == '/')
*(fileName + len - 1) = 0;
to
if ((slash == '\\' || slash == '/') && (! (len >= 2 && *(fileName + len - 2) == ':')))
*(fileName + len -1) = 0;