diff options
author | Glenn L McGrath <bug1@ihug.co.nz> | 2003-06-10 17:22:49 +0000 |
---|---|---|
committer | Glenn L McGrath <bug1@ihug.co.nz> | 2003-06-10 17:22:49 +0000 |
commit | 24833430bc2dbea733c3b0b9ea6c6b976f95474a (patch) | |
tree | 805a4197b8a0d36eaa6880dfc23d8c2539359fe9 /libbb/find_root_device.c | |
parent | 6c43f743a3f607f91ee22a53db880fce2df645f0 (diff) | |
download | busybox-w32-24833430bc2dbea733c3b0b9ea6c6b976f95474a.tar.gz busybox-w32-24833430bc2dbea733c3b0b9ea6c6b976f95474a.tar.bz2 busybox-w32-24833430bc2dbea733c3b0b9ea6c6b976f95474a.zip |
Vodz, last_patch_88
Diffstat (limited to 'libbb/find_root_device.c')
-rw-r--r-- | libbb/find_root_device.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/libbb/find_root_device.c b/libbb/find_root_device.c index b12d392a2..654f17145 100644 --- a/libbb/find_root_device.c +++ b/libbb/find_root_device.c | |||
@@ -48,11 +48,14 @@ extern char *find_real_root_device_name(const char* name) | |||
48 | bb_perror_msg("could not open '/dev'"); | 48 | bb_perror_msg("could not open '/dev'"); |
49 | else { | 49 | else { |
50 | while((entry = readdir(dir)) != NULL) { | 50 | while((entry = readdir(dir)) != NULL) { |
51 | 51 | const char *name = entry->d_name; | |
52 | fileName = concat_subpath_file("/dev", entry->d_name); | 52 | /* Must skip ".." since that is "/", and so we |
53 | if(fileName == NULL) | 53 | * would get a false positive on ".." */ |
54 | if (name[0] == '.' && name[1] == '.' && !name[2]) | ||
54 | continue; | 55 | continue; |
55 | 56 | ||
57 | fileName = concat_path_file("/dev", name); | ||
58 | |||
56 | /* Some char devices have the same dev_t as block | 59 | /* Some char devices have the same dev_t as block |
57 | * devices, so make sure this is a block device */ | 60 | * devices, so make sure this is a block device */ |
58 | if (stat(fileName, &statBuf) == 0 && | 61 | if (stat(fileName, &statBuf) == 0 && |
@@ -66,7 +69,7 @@ extern char *find_real_root_device_name(const char* name) | |||
66 | } | 69 | } |
67 | } | 70 | } |
68 | if(fileName==NULL) | 71 | if(fileName==NULL) |
69 | fileName=bb_xstrdup("/dev/root"); | 72 | fileName = bb_xstrdup("/dev/root"); |
70 | return fileName; | 73 | return fileName; |
71 | } | 74 | } |
72 | 75 | ||