IsArray = IsFieldValueAnArray(FieldList[FieldName][0])\r
if IsArray:\r
try:\r
- FieldList[FieldName][0] = ValueExpressionEx(FieldList[FieldName][0], TAB_VOID, self._GuidDict)(True)\r
+ FieldValue = ValueExpressionEx(FieldList[FieldName][0], TAB_VOID, self._GuidDict)(True)\r
except BadExpression:\r
EdkLogger.error('Build', FORMAT_INVALID, "Invalid value format for %s. From %s Line %d " %\r
(".".join((Pcd.TokenSpaceGuidCName, Pcd.TokenCName, FieldName)), FieldList[FieldName][1], FieldList[FieldName][2]))\r
try:\r
- Value, ValueSize = ParseFieldValue (FieldList[FieldName][0])\r
+ if IsArray:\r
+ Value, ValueSize = ParseFieldValue (FieldValue)\r
+ else:\r
+ Value, ValueSize = ParseFieldValue (FieldList[FieldName][0])\r
except Exception:\r
EdkLogger.error('Build', FORMAT_INVALID, "Invalid value format for %s. From %s Line %d " % (".".join((Pcd.TokenSpaceGuidCName, Pcd.TokenCName, FieldName)), FieldList[FieldName][1], FieldList[FieldName][2]))\r
if isinstance(Value, str):\r