diff options
Diffstat (limited to 'Private/NewBoot/BootKit')
| -rw-r--r-- | Private/NewBoot/BootKit/BootKit.hxx | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/Private/NewBoot/BootKit/BootKit.hxx b/Private/NewBoot/BootKit/BootKit.hxx index 76bfbfb0..2d8b535d 100644 --- a/Private/NewBoot/BootKit/BootKit.hxx +++ b/Private/NewBoot/BootKit/BootKit.hxx @@ -229,12 +229,12 @@ public: return false; } - if (blockPart->DiskSize != this->fDiskDev.GetDiskSize()) { + if (blockPart->DiskSize != this->fDiskDev.GetDiskSize() || + blockPart->DiskSize < 1 || + blockPart->SectorSize != BootDev::kSectorSize) { EFI::ThrowError(L"Invalid-Disk-Geometry", L"Invalid disk geometry."); - } - - if (blockPart->DiskSize < 1) { - EFI::ThrowError(L"Invalid-Disk-Geometry", L"Invalid disk geometry."); + } else if (blockPart->PartitionName[0] == 0) { + EFI::ThrowError(L"Invalid-Partition-Name", L"Invalid disk partition."); } BTextWriter writer; |
