diff options
Diffstat (limited to 'isys/devnodes.c')
-rw-r--r-- | isys/devnodes.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/isys/devnodes.c b/isys/devnodes.c index e24b9e8c2..c130499e0 100644 --- a/isys/devnodes.c +++ b/isys/devnodes.c @@ -170,8 +170,13 @@ int devMakeInode(char * devName, char * path) { type = S_IFBLK; major = 94; minor = ( devName[4] - 'a' ) * 4; - if (devName[5] && isdigit(devName[5]) ) - minor += devName[5] - '0'; + if (devName[5] && isalpha(devName[5])) { + minor += 26 * 4 + ( devName[5] - 'a' ) * 4; + if (devName[6] && isdigit(devName[6]) ) + minor += devName[6] - '0'; + } else if (devName[5] && isdigit(devName[5])) { + minor += devName[5] - '0'; + } } else if (!strncmp(devName, "mnd", 4)) { /* IBM MiniDisk Drives */ type = S_IFBLK; |