diff options
author | Dees_Troy <dees_troy@teamw.in> | 2012-12-12 20:29:35 +0100 |
---|---|---|
committer | Dees_Troy <dees_troy@teamw.in> | 2012-12-12 20:29:35 +0100 |
commit | 68cab49d96a3bc3636fbb9e7238b78f0b7ed1613 (patch) | |
tree | b92cab688317d51e2626247c4aa39e485f56b41e /partition.cpp | |
parent | Restore text display during restore (diff) | |
download | android_bootable_recovery-68cab49d96a3bc3636fbb9e7238b78f0b7ed1613.tar android_bootable_recovery-68cab49d96a3bc3636fbb9e7238b78f0b7ed1613.tar.gz android_bootable_recovery-68cab49d96a3bc3636fbb9e7238b78f0b7ed1613.tar.bz2 android_bootable_recovery-68cab49d96a3bc3636fbb9e7238b78f0b7ed1613.tar.lz android_bootable_recovery-68cab49d96a3bc3636fbb9e7238b78f0b7ed1613.tar.xz android_bootable_recovery-68cab49d96a3bc3636fbb9e7238b78f0b7ed1613.tar.zst android_bootable_recovery-68cab49d96a3bc3636fbb9e7238b78f0b7ed1613.zip |
Diffstat (limited to 'partition.cpp')
-rw-r--r-- | partition.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/partition.cpp b/partition.cpp index dd8d3b3aa..32376c1bc 100644 --- a/partition.cpp +++ b/partition.cpp @@ -82,6 +82,7 @@ TWPartition::TWPartition(void) { Current_File_System = ""; Fstab_File_System = ""; Format_Block_Size = 0; + Ignore_Blkid = false; } TWPartition::~TWPartition(void) { @@ -152,6 +153,7 @@ bool TWPartition::Process_Fstab_Line(string Line, bool Display_Error) { // Custom flags, save for later so that new values aren't overwritten by defaults ptr += 6; Flags = ptr; + Process_Flags(Flags, Display_Error); } else if (strlen(ptr) == 4 && (strncmp(ptr, "NULL", 4) == 0 || strncmp(ptr, "null", 4) == 0 || strncmp(ptr, "null", 4) == 0)) { // Do nothing } else { @@ -333,6 +335,8 @@ bool TWPartition::Process_Flags(string Flags, bool Display_Error) { ptr += 13; Is_SubPartition = true; SubPartition_Of = ptr; + } else if (strcmp(ptr, "ignoreblkid") == 0) { + Ignore_Blkid = true; } else if (strlen(ptr) > 8 && strncmp(ptr, "symlink=", 8) == 0) { ptr += 8; Symlink_Path = ptr; @@ -881,8 +885,8 @@ void TWPartition::Check_FS_Type() { char* arg; char* ptr; - if (Fstab_File_System == "yaffs2" || Fstab_File_System == "mtd" || Fstab_File_System == "bml") - return; // Running blkid on some mtd devices causes a massive crash + if (Fstab_File_System == "yaffs2" || Fstab_File_System == "mtd" || Fstab_File_System == "bml" || Ignore_Blkid) + return; // Running blkid on some mtd devices causes a massive crash or needs to be skipped Find_Actual_Block_Device(); if (!Is_Present) |