|
From: <lg...@us...> - 2010-02-01 09:21:41
|
Revision: 1830
http://edk2-buildtools.svn.sourceforge.net/edk2-buildtools/?rev=1830&view=rev
Author: lgao4
Date: 2010-02-01 09:21:34 +0000 (Mon, 01 Feb 2010)
Log Message:
-----------
Catch TypeError exception when do int(value)
Modified Paths:
--------------
trunk/BaseTools/Source/Python/AutoGen/GenC.py
Modified: trunk/BaseTools/Source/Python/AutoGen/GenC.py
===================================================================
--- trunk/BaseTools/Source/Python/AutoGen/GenC.py 2010-02-01 02:35:58 UTC (rev 1829)
+++ trunk/BaseTools/Source/Python/AutoGen/GenC.py 2010-02-01 09:21:34 UTC (rev 1830)
@@ -963,10 +963,15 @@
Unicode = False
ValueNumber = 0
if Pcd.DatumType in ['UINT64', 'UINT32', 'UINT16', 'UINT8']:
- if Value.upper().startswith('0X'):
- ValueNumber = int (Value, 16)
- else:
- ValueNumber = int (Value)
+ try:
+ if Value.upper().startswith('0X'):
+ ValueNumber = int (Value, 16)
+ else:
+ ValueNumber = int (Value)
+ except:
+ EdkLogger.error("build", AUTOGEN_ERROR,
+ "PCD value is not valid dec or hex number for datum type [%s] of PCD %s.%s" % (Pcd.DatumType, Pcd.TokenSpaceGuidCName, Pcd.TokenCName),
+ ExtraData="[%s]" % str(Info))
if Pcd.DatumType == 'UINT64':
if ValueNumber < 0:
EdkLogger.error("build", AUTOGEN_ERROR,
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|