diff -urN raidtools-1.00.3/raidlib.c raidtools-1.00.3-rgg/raidlib.c --- raidtools-1.00.3/raidlib.c Wed Jan 15 08:58:25 2003 +++ raidtools-1.00.3-rgg/raidlib.c Thu Nov 13 16:51:37 2003 @@ -460,11 +460,19 @@ case raidstart: { struct stat s; + int i=0; + for ( i=0; i< MD_SB_DISKS; ++i) { + + if (!cfg->device_name[i][0]) { + rc++; + break; + } + stat (cfg->device_name[i], &s); - stat (cfg->device_name[0], &s); - - fd = open_or_die(cfg->md_name); - if (do_mdstart (fd, cfg->md_name, s.st_rdev)) rc++; + fd = open_or_die(cfg->md_name); + if ( ! do_mdstart (fd, cfg->md_name, s.st_rdev)) + break; + } break; }