diff options
Diffstat (limited to 'umount.c')
-rw-r--r-- | umount.c | 9 |
1 files changed, 7 insertions, 2 deletions
@@ -73,8 +73,13 @@ umount_all(int useMtab) | |||
73 | while ((m = getmntent (mountTable)) != 0) { | 73 | while ((m = getmntent (mountTable)) != 0) { |
74 | char *blockDevice = m->mnt_fsname; | 74 | char *blockDevice = m->mnt_fsname; |
75 | #if ! defined BB_MTAB | 75 | #if ! defined BB_MTAB |
76 | if (strcmp (blockDevice, "/dev/root") == 0) | 76 | if (strcmp (blockDevice, "/dev/root") == 0) { |
77 | blockDevice = (getfsfile ("/"))->fs_spec; | 77 | struct fstab* fstabItem; |
78 | fstabItem = getfsfile ("/"); | ||
79 | if (fstabItem != NULL) { | ||
80 | blockDevice = fstabItem->fs_spec; | ||
81 | } | ||
82 | } | ||
78 | #endif | 83 | #endif |
79 | /* Don't umount /proc when doing umount -a */ | 84 | /* Don't umount /proc when doing umount -a */ |
80 | if (strcmp (blockDevice, "proc") == 0) | 85 | if (strcmp (blockDevice, "proc") == 0) |