diff options
Diffstat (limited to 'winsup/cygwin/path.cc')
-rw-r--r-- | winsup/cygwin/path.cc | 12 |
1 files changed, 7 insertions, 5 deletions
diff --git a/winsup/cygwin/path.cc b/winsup/cygwin/path.cc index 241660885..92fb00d9f 100644 --- a/winsup/cygwin/path.cc +++ b/winsup/cygwin/path.cc @@ -903,17 +903,19 @@ win32_device_name (const char *src_path, char *win32_path, device& dev) if (dev.devn == FH_FS) return false; - switch (dev.devn) + switch (dev.major) { - case FH_TAPE: + case DEV_TAPE_MAJOR: __small_sprintf (win32_path, dev.fmt, dev.minor % 128); break; - case FH_RAWDRIVE: - __small_sprintf (win32_path, dev.fmt, dev.minor - 224 + 'A'); + case DEV_RAWDRIVE_MAJOR: + __small_sprintf (win32_path, dev.fmt, dev.minor + 'A'); + break; + case DEV_SD_MAJOR: + __small_sprintf (win32_path, dev.fmt, dev.minor / 16, dev.minor % 16); break; default: __small_sprintf (win32_path, dev.fmt, dev.minor); - break; } return true; } |