diff options
Diffstat (limited to 'src/w32.c')
-rw-r--r-- | src/w32.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/src/w32.c b/src/w32.c index ef0272259c4..2a7be366aec 100644 --- a/src/w32.c +++ b/src/w32.c @@ -3347,11 +3347,13 @@ stat (const char * path, struct stat * buf) } } - /* GetDriveType needs the root directory of NAME's drive. */ - if (!(strlen (name) >= 2 && IS_DEVICE_SEP (name[1]))) - devtype = GetDriveType (NULL); /* use root of current diectory */ + if (IS_DIRECTORY_SEP (name[0]) && IS_DIRECTORY_SEP (name[1])) + devtype = DRIVE_REMOTE; /* assume UNC name is remote */ + else if (!(strlen (name) >= 2 && IS_DEVICE_SEP (name[1]))) + devtype = GetDriveType (NULL); /* use root of current drive */ else { + /* GetDriveType needs the root directory of NAME's drive. */ strncpy (drive_root, name, 3); drive_root[3] = '\0'; devtype = GetDriveType (drive_root); |