From 5588565f4845d8138888f436218bc8334c0be54f Mon Sep 17 00:00:00 2001 From: Laszlo Ersek Date: Mon, 11 Jul 2016 16:17:23 +0200 Subject: [PATCH] BaseTools/GenFds: factor out Region.PadBuffer() method The same logic is used in five places; factor it out to a common method. Cc: Yonghong Zhu Cc: Liming Gao Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Laszlo Ersek Reviewed-by: Liming Gao --- BaseTools/Source/Python/GenFds/Region.py | 58 ++++++++++-------------- 1 file changed, 24 insertions(+), 34 deletions(-) diff --git a/BaseTools/Source/Python/GenFds/Region.py b/BaseTools/Source/Python/GenFds/Region.py index 6015e24e25..6769b39ba7 100644 --- a/BaseTools/Source/Python/GenFds/Region.py +++ b/BaseTools/Source/Python/GenFds/Region.py @@ -39,6 +39,25 @@ class Region(RegionClassObject): RegionClassObject.__init__(self) + ## PadBuffer() + # + # Add padding bytes to the Buffer + # + # @param Buffer The buffer the generated region data will be put + # in + # @param ErasePolarity Flash erase polarity + # @param Size Number of padding bytes requested + # + + def PadBuffer(self, Buffer, ErasePolarity, Size): + if Size > 0: + if (ErasePolarity == '1') : + PadData = 0xFF + else: + PadData = 0 + for i in range(0, Size): + Buffer.write(pack('B', PadData)) + ## AddToBuffer() # # Add region data to the Buffer @@ -135,13 +154,7 @@ class Region(RegionClassObject): # # Pad the left buffer # - if Size > 0: - if (ErasePolarity == '1') : - PadData = 0xFF - else : - PadData = 0 - for i in range(0, Size): - Buffer.write(pack('B', PadData)) + self.PadBuffer(Buffer, ErasePolarity, Size) if self.RegionType == 'CAPSULE': # @@ -194,13 +207,7 @@ class Region(RegionClassObject): # # Pad the left buffer # - if Size > 0: - if (ErasePolarity == '1') : - PadData = 0xFF - else : - PadData = 0 - for i in range(0, Size): - Buffer.write(pack('B', PadData)) + self.PadBuffer(Buffer, ErasePolarity, Size) if self.RegionType in ('FILE', 'INF'): for RegionData in self.RegionDataList: @@ -232,13 +239,7 @@ class Region(RegionClassObject): # # Pad the left buffer # - if Size > 0: - if (ErasePolarity == '1') : - PadData = 0xFF - else : - PadData = 0 - for i in range(0, Size): - Buffer.write(pack('B', PadData)) + self.PadBuffer(Buffer, ErasePolarity, Size) if self.RegionType == 'DATA' : GenFdsGlobalVariable.InfLogger(' Region Name = DATA') @@ -255,22 +256,11 @@ class Region(RegionClassObject): # # Pad the left buffer # - if Size > 0: - if (ErasePolarity == '1') : - PadData = 0xFF - else : - PadData = 0 - for i in range(0, Size): - Buffer.write(pack('B', PadData)) + self.PadBuffer(Buffer, ErasePolarity, Size) if self.RegionType == None: GenFdsGlobalVariable.InfLogger(' Region Name = None') - if (ErasePolarity == '1') : - PadData = 0xFF - else : - PadData = 0 - for i in range(0, Size): - Buffer.write(pack('B', PadData)) + self.PadBuffer(Buffer, ErasePolarity, Size) def GetFvAlignValue(self, Str): AlignValue = 1