mirror of
https://github.com/LongSoft/UEFITool.git
synced 2024-11-23 16:38:23 +08:00
parent
e0b1e0205f
commit
6f9a4c0d46
@ -375,7 +375,7 @@ USTATUS MeParser::parseIfwi16Region(const UByteArray & region, const UModelIndex
|
||||
partitions.push_back(partition);
|
||||
}
|
||||
// Add boot partitions
|
||||
for (UINT8 i = 0 ; i < 4; i++) {
|
||||
for (UINT8 i = 0 ; i < 5; i++) {
|
||||
if (ifwiHeader->BootPartition[i].Offset != 0 && ifwiHeader->BootPartition[i].Offset != 0xFFFFFFFF) {
|
||||
IFWI_PARTITION_INFO partition = {};
|
||||
partition.type = Types::IfwiPartition;
|
||||
@ -551,7 +551,7 @@ USTATUS MeParser::parseIfwi17Region(const UByteArray & region, const UModelIndex
|
||||
partitions.push_back(partition);
|
||||
}
|
||||
// Add boot partitions
|
||||
for (UINT8 i = 0 ; i < 4; i++) {
|
||||
for (UINT8 i = 0 ; i < 5; i++) {
|
||||
if (ifwiHeader->BootPartition[i].Offset != 0 && ifwiHeader->BootPartition[i].Offset != 0xFFFFFFFF) {
|
||||
IFWI_PARTITION_INFO partition = {};
|
||||
partition.type = Types::IfwiPartition;
|
||||
@ -671,8 +671,15 @@ make_partition_table_consistent:
|
||||
}
|
||||
else if (partitions[i].subtype == Subtypes::BootIfwiPartition) {
|
||||
// Parse code partition contents
|
||||
UModelIndex bootPartitionBpdtRegionIndex;
|
||||
ffsParser->parseBpdtRegion(partition, 0, 0, partitionIndex, bootPartitionBpdtRegionIndex);
|
||||
UModelIndex bootPartitionRegionIndex;
|
||||
if (*(UINT32*)partition.constData() == FPT_HEADER_SIGNATURE) {
|
||||
// Parse as FptRegion
|
||||
parseFptRegion(partition, partitionIndex, bootPartitionRegionIndex);
|
||||
}
|
||||
else {
|
||||
// Parse as BpdtRegion
|
||||
ffsParser->parseBpdtRegion(partition, 0, 0, partitionIndex, bootPartitionRegionIndex);
|
||||
}
|
||||
}
|
||||
}
|
||||
else if (partitions[i].type == Types::Padding) {
|
||||
|
Loading…
Reference in New Issue
Block a user