Reviewed-by: Liming Gao <liming....@intel.com>

-----Original Message-----
From: Zhu, Yonghong 
Sent: Wednesday, November 30, 2016 5:07 PM
To: edk2-devel@lists.01.org
Cc: Gao, Liming <liming....@intel.com>
Subject: [Patch] BaseTools: add error check for "#image" for idf file format

Add new error check for "#image" keyword used in the image definition file.

Cc: Liming Gao <liming....@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Yonghong Zhu <yonghong....@intel.com>
---
 BaseTools/Source/Python/AutoGen/IdfClassObject.py | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/BaseTools/Source/Python/AutoGen/IdfClassObject.py 
b/BaseTools/Source/Python/AutoGen/IdfClassObject.py
index 76bc6d1..d6d4703 100644
--- a/BaseTools/Source/Python/AutoGen/IdfClassObject.py
+++ b/BaseTools/Source/Python/AutoGen/IdfClassObject.py
@@ -92,13 +92,16 @@ class IdfFileClassObject(object):
             Line = Line.strip()
             Line = self.StripComments(Line)
             if len(Line) == 0:
                 continue
 
+            LineNo = GetLineNo(FileIn, Line, False)
+            if not Line.startswith('#image '):
+                EdkLogger.error("Image Definition File Parser", 
+ PARSER_ERROR, 'The %s in Line %s of File %s is invalid.' % (Line, 
+ LineNo, File.Path))
+
             if Line.find('#image ') >= 0:
                 LineDetails = Line.split()
-                LineNo = GetLineNo(FileIn, Line, False)
                 Len = len(LineDetails)
                 if Len != 3 and Len != 4:
                     EdkLogger.error("Image Definition File Parser", 
PARSER_ERROR, 'The format is not match #image IMAGE_ID [TRANSPARENT] 
ImageFileName in Line %s of File %s.' % (LineNo, File.Path))
                 if Len == 4 and LineDetails[2] != 'TRANSPARENT':
                     EdkLogger.error("Image Definition File Parser", 
PARSER_ERROR, 'Please use the keyword "TRANSPARENT" to describe the 
transparency setting in Line %s of File %s.' % (LineNo, File.Path))
--
2.6.1.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to