]> git.ipfire.org Git - thirdparty/mdadm.git/blobdiff - util.c
Stop map_dev from returning [0:0]
[thirdparty/mdadm.git] / util.c
diff --git a/util.c b/util.c
index d54d4452c858543f7a17ebf8b8635fe99a8dba91..2cb6dd316f8e173ab913e54a778e96110a450524 100644 (file)
--- a/util.c
+++ b/util.c
@@ -417,12 +417,9 @@ char *map_dev(int major, int minor, int create)
        char *std = NULL, *nonstd=NULL;
        int did_check = 0;
 
-       if (major == 0 && minor == 0) {
-               if (!create)
+       if (major == 0 && minor == 0)
                        return NULL;
-               else
-                       return "0:0";
-       }
+
  retry:
        if (!devlist_ready) {
                char *dev = "/dev";
@@ -636,8 +633,12 @@ int dev_open(char *dev, int flags)
        char *e;
        int fd = -1;
        char devname[32];
-       int major = strtoul(dev, &e, 0);
+       int major;
        int minor;
+
+       if (!dev) return -1;
+
+       major = strtoul(dev, &e, 0);
        if (e > dev && *e == ':' && e[1] &&
            (minor = strtoul(e+1, &e, 0)) >= 0 &&
            *e == 0) {