Zhiju:
   Thanks for your fix. Can you list your test case? 

Thanks
Liming
>-----Original Message-----
>From: Fan, ZhijuX
>Sent: Friday, June 28, 2019 3:01 PM
>To: devel@edk2.groups.io
>Cc: Gao, Liming <liming....@intel.com>; Feng, Bob C <bob.c.f...@intel.com>
>Subject: [PATCH V2] BaseTools:Add the Judgment Method of "--exclude"
>
>BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=1944
>
>--exclude cannot be used under certain circumstances
>1.The value of the parameter USES an absolute path
>2.The value of Exclude parameters is based on the value
>  of the Path parameter
>Neither of these approaches currently works
>
>This patch is going to fix that issue.
>
>Cc: Liming Gao <liming....@intel.com>
>Cc: Bob Feng <bob.c.f...@intel.com>
>Signed-off-by: Zhiju.Fan <zhijux....@intel.com>
>---
>keep original behavior on
>--exclude for the directory name or file name.
>
> BaseTools/Scripts/FormatDosFiles.py | 18 +++++++++++++++++-
> 1 file changed, 17 insertions(+), 1 deletion(-)
>
>diff --git a/BaseTools/Scripts/FormatDosFiles.py
>b/BaseTools/Scripts/FormatDosFiles.py
>index d9a880f299..3150bef3c2 100644
>--- a/BaseTools/Scripts/FormatDosFiles.py
>+++ b/BaseTools/Scripts/FormatDosFiles.py
>@@ -20,7 +20,7 @@ import copy
>
> __prog__        = 'FormatDosFiles'
> __version__     = '%s Version %s' % (__prog__, '0.10 ')
>-__copyright__   = 'Copyright (c) 2018, Intel Corporation. All rights 
>reserved.'
>+__copyright__   = 'Copyright (c) 2018-2019, Intel Corporation. All rights
>reserved.'
> __description__ = 'Convert source files to meet the EDKII C Coding Standards
>Specification.\n'
> DEFAULT_EXT_LIST = ['.h', '.c', '.nasm', '.nasmb', '.asm', '.S', '.inf', 
> '.dec', '.dsc',
>'.fdf', '.uni', '.asl', '.aslc', '.vfr', '.idf', '.txt', '.bat', '.py']
>
>@@ -46,10 +46,26 @@ def FormatFile(FilePath, Args):
> def FormatFilesInDir(DirPath, ExtList, Args):
>
>     FileList = []
>+    ExcludeDir = DirPath
>     for DirPath, DirNames, FileNames in os.walk(DirPath):
>         if Args.Exclude:
>             DirNames[:] = [d for d in DirNames if d not in Args.Exclude]
>             FileNames[:] = [f for f in FileNames if f not in Args.Exclude]
>+            Continue = False
>+            for Path in Args.Exclude:
>+                if not os.path.isdir(Path) and not os.path.isfile(Path):
>+                    Path = os.path.join(ExcludeDir, Path)
>+                if os.path.isdir(Path) and Path.endswith(DirPath):
>+                    DirNames[:] = []
>+                    Continue = True
>+                elif os.path.isfile(Path):
>+                    FilePaths = FileNames
>+                    for ItemPath in FilePaths:
>+                        FilePath = os.path.join(DirPath, ItemPath)
>+                        if Path.endswith(FilePath):
>+                            FileNames.remove(ItemPath)
>+            if Continue:
>+                continue
>         for FileName in [f for f in FileNames if any(f.endswith(ext) for ext 
> in
>ExtList)]:
>                 FileList.append(os.path.join(DirPath, FileName))
>     for File in FileList:
>--
>2.14.1.windows.1


-=-=-=-=-=-=-=-=-=-=-=-
Groups.io Links: You receive all messages sent to this group.

View/Reply Online (#43386): https://edk2.groups.io/g/devel/message/43386
Mute This Topic: https://groups.io/mt/32239581/21656
Group Owner: devel+ow...@edk2.groups.io
Unsubscribe: https://edk2.groups.io/g/devel/unsub  [arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to