# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
#\r
+from __future__ import absolute_import\r
from io import BytesIO\r
from Common.Misc import *\r
from Common.StringUtils import StringToArray\r
import copy\r
from struct import unpack\r
from Common.DataType import *\r
+from Common import GlobalData\r
+from Common import EdkLogger\r
+import Common.LongFilePathOs as os\r
\r
DATABASE_VERSION = 7\r
\r
# Variable length, need to calculate one by one\r
#\r
assert(Index < len(self.RawDataList))\r
- for ItemIndex in range(Index):\r
+ for ItemIndex in xrange(Index):\r
Offset += len(self.RawDataList[ItemIndex])\r
else:\r
Offset = self.ItemSize * Index\r
assert(False)\r
else:\r
assert(Index < len(self.RawDataList))\r
- for ItemIndex in range(Index):\r
+ for ItemIndex in xrange(Index):\r
Offset += len(self.RawDataList[ItemIndex]) * self.ItemSize\r
\r
return Offset\r
# Variable length, need to calculate one by one\r
#\r
assert(Index < len(self.RawDataList))\r
- for ItemIndex in range(Index):\r
+ for ItemIndex in xrange(Index):\r
Offset += len(self.RawDataList[ItemIndex])\r
else:\r
for innerIndex in range(Index):\r
assert(len(RawDataList) == len(LenList))\r
DataList = []\r
# adjust DataList according to the LenList\r
- for Index in range(len(RawDataList)):\r
+ for Index in xrange(len(RawDataList)):\r
Len = LenList[Index]\r
RawDatas = RawDataList[Index]\r
assert(Len >= len(RawDatas))\r
ActualDatas = []\r
- for i in range(len(RawDatas)):\r
+ for i in xrange(len(RawDatas)):\r
ActualDatas.append(RawDatas[i])\r
- for i in range(len(RawDatas), Len):\r
+ for i in xrange(len(RawDatas), Len):\r
ActualDatas.append(0)\r
DataList.append(ActualDatas)\r
self.LenList = LenList\r
Offset = 0\r
\r
assert(Index < len(self.LenList))\r
- for ItemIndex in range(Index):\r
+ for ItemIndex in xrange(Index):\r
Offset += self.LenList[ItemIndex]\r
\r
return Offset\r
\r
# Get offset of SkuId table in the database\r
SkuIdTableOffset = FixedHeaderLen\r
- for DbIndex in range(len(DbTotal)):\r
+ for DbIndex in xrange(len(DbTotal)):\r
if DbTotal[DbIndex] is SkuidValue:\r
break\r
SkuIdTableOffset += DbItemTotal[DbIndex].GetListSize()\r
for (LocalTokenNumberTableIndex, (Offset, Table)) in enumerate(LocalTokenNumberTable):\r
DbIndex = 0\r
DbOffset = FixedHeaderLen\r
- for DbIndex in range(len(DbTotal)):\r
+ for DbIndex in xrange(len(DbTotal)):\r
if DbTotal[DbIndex] is Table:\r
DbOffset += DbItemTotal[DbIndex].GetInterOffset(Offset)\r
break\r
(VariableHeadGuidIndex, VariableHeadStringIndex, SKUVariableOffset, VariableOffset, VariableRefTable, VariableAttribute) = VariableEntryPerSku[:]\r
DbIndex = 0\r
DbOffset = FixedHeaderLen\r
- for DbIndex in range(len(DbTotal)):\r
+ for DbIndex in xrange(len(DbTotal)):\r
if DbTotal[DbIndex] is VariableRefTable:\r
DbOffset += DbItemTotal[DbIndex].GetInterOffset(VariableOffset)\r
break\r
\r
# calculate various table offset now\r
DbTotalLength = FixedHeaderLen\r
- for DbIndex in range(len(DbItemTotal)):\r
+ for DbIndex in xrange(len(DbItemTotal)):\r
if DbItemTotal[DbIndex] is DbLocalTokenNumberTable:\r
LocalTokenNumberTableOffset = DbTotalLength\r
elif DbItemTotal[DbIndex] is DbExMapTable:\r