[edk2] [Patch] BaseTools: Support TabSpace between section tag in DEC file

Yonghong Zhu posted 1 patch 6 years, 8 months ago
Failed in applying to current master (apply log)
BaseTools/Source/Python/Workspace/MetaFileParser.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
[edk2] [Patch] BaseTools: Support TabSpace between section tag in DEC file
Posted by Yonghong Zhu 6 years, 8 months ago
From: Yanyan Zhang <yanyanx.zhang@intel.com>

Per DEC spec, multiple section tag use <TS> to separate, and it can
support Tab, so this patch fix the bug to use Tab.

<TabSpace> ::= {<Tab>} {<Space>}
<TS> ::= <TabSpace>*

Cc: Liming Gao <liming.gao@intel.com>
Cc: Yonghong Zhu <yonghong.zhu@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Yanyan Zhang <yanyanx.zhang@intel.com>
---
 BaseTools/Source/Python/Workspace/MetaFileParser.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/BaseTools/Source/Python/Workspace/MetaFileParser.py b/BaseTools/Source/Python/Workspace/MetaFileParser.py
index e98352a..b756361 100644
--- a/BaseTools/Source/Python/Workspace/MetaFileParser.py
+++ b/BaseTools/Source/Python/Workspace/MetaFileParser.py
@@ -1752,11 +1752,11 @@ class DecParser(MetaFileParser):
         self._Scope = []
         self._SectionName = ''
         self._SectionType = []
         ArchList = set()
         PrivateList = set()
-        Line = self._CurrentLine.replace("%s%s" % (TAB_COMMA_SPLIT, TAB_SPACE_SPLIT), TAB_COMMA_SPLIT)
+        Line = re.sub(',[\s]*', TAB_COMMA_SPLIT, self._CurrentLine)
         for Item in Line[1:-1].split(TAB_COMMA_SPLIT):
             if Item == '':
                 EdkLogger.error("Parser", FORMAT_UNKNOWN_ERROR,
                                 "section name can NOT be empty or incorrectly use separator comma",
                                 self.MetaFile, self._LineIndex + 1, self._CurrentLine)
-- 
2.6.1.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel
Re: [edk2] [Patch] BaseTools: Support TabSpace between section tag in DEC file
Posted by Zhu, Yonghong 6 years, 8 months ago
Reviewed-by: Yonghong Zhu <yonghong.zhu@intel.com> 

Best Regards,
Zhu Yonghong

-----Original Message-----
From: edk2-devel [mailto:edk2-devel-bounces@lists.01.org] On Behalf Of Yonghong Zhu
Sent: Friday, August 11, 2017 10:51 AM
To: edk2-devel@lists.01.org
Cc: Gao, Liming <liming.gao@intel.com>; Zhang, YanyanX <yanyanx.zhang@intel.com>
Subject: [edk2] [Patch] BaseTools: Support TabSpace between section tag in DEC file

From: Yanyan Zhang <yanyanx.zhang@intel.com>

Per DEC spec, multiple section tag use <TS> to separate, and it can support Tab, so this patch fix the bug to use Tab.

<TabSpace> ::= {<Tab>} {<Space>}
<TS> ::= <TabSpace>*

Cc: Liming Gao <liming.gao@intel.com>
Cc: Yonghong Zhu <yonghong.zhu@intel.com>
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Yanyan Zhang <yanyanx.zhang@intel.com>
---
 BaseTools/Source/Python/Workspace/MetaFileParser.py | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/BaseTools/Source/Python/Workspace/MetaFileParser.py b/BaseTools/Source/Python/Workspace/MetaFileParser.py
index e98352a..b756361 100644
--- a/BaseTools/Source/Python/Workspace/MetaFileParser.py
+++ b/BaseTools/Source/Python/Workspace/MetaFileParser.py
@@ -1752,11 +1752,11 @@ class DecParser(MetaFileParser):
         self._Scope = []
         self._SectionName = ''
         self._SectionType = []
         ArchList = set()
         PrivateList = set()
-        Line = self._CurrentLine.replace("%s%s" % (TAB_COMMA_SPLIT, TAB_SPACE_SPLIT), TAB_COMMA_SPLIT)
+        Line = re.sub(',[\s]*', TAB_COMMA_SPLIT, self._CurrentLine)
         for Item in Line[1:-1].split(TAB_COMMA_SPLIT):
             if Item == '':
                 EdkLogger.error("Parser", FORMAT_UNKNOWN_ERROR,
                                 "section name can NOT be empty or incorrectly use separator comma",
                                 self.MetaFile, self._LineIndex + 1, self._CurrentLine)
--
2.6.1.windows.1

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