]> git.proxmox.com Git - mirror_edk2.git/blobdiff - BaseTools/Source/Python/GenFds/Fd.py
Sync BaseTool trunk (version r2599) into EDKII BaseTools.
[mirror_edk2.git] / BaseTools / Source / Python / GenFds / Fd.py
index aa4d2e8262d0baaee5f80401cfcc0e423d4d1d41..3716549cbadafbe55a0c56c54193420b7f75a26b 100644 (file)
@@ -113,10 +113,15 @@ class FD(FDClassObject):
             PreviousRegionStart = RegionObj.Offset\r
             PreviousRegionSize = RegionObj.Size\r
             #\r
+            # Verify current region fits within allocated FD section Size\r
+            #\r
+            if PreviousRegionStart + PreviousRegionSize > self.Size:\r
+                EdkLogger.error("GenFds", GENFDS_ERROR,\r
+                                'FD %s size too small to fit region with offset 0x%X and size 0x%X'\r
+                                % (self.FdUiName, PreviousRegionStart, PreviousRegionSize))\r
+            #\r
             # Call each region's AddToBuffer function\r
             #\r
-            if PreviousRegionSize > self.Size:\r
-                EdkLogger.error("GenFds", GENFDS_ERROR, 'FD %s size too small' % self.FdUiName)\r
             GenFdsGlobalVariable.VerboseLogger('Call each region\'s AddToBuffer function')\r
             RegionObj.AddToBuffer (FdBuffer, self.BaseAddress, self.BlockSizeList, self.ErasePolarity, GenFds.ImageBinDict, self.vtfRawDict, self.DefineVarDict)\r
         #\r