Thanks. I will update it. Best Regards,
Zhu Yonghong -----Original Message----- From: Wu, Hao A Sent: Monday, October 26, 2015 11:29 AM To: Zhu, Yonghong; [email protected] Cc: Gao, Liming Subject: RE: [Patch] BaseTools:remove the redundant directories for '-f' with absolute path. Hi Yonghong, I think you missed defining the variable 'tempchar', could you please update the patch? Best Regards, Hao Wu > -----Original Message----- > From: Zhu, Yonghong > Sent: Monday, October 26, 2015 10:48 AM > To: [email protected] > Cc: Gao, Liming; Wu, Hao A > Subject: [Patch] BaseTools:remove the redundant directories for '-f' > with absolute path. > > when the absolute path is given to '-f', it would create some > redundant empty directories. > > Contributed-under: TianoCore Contribution Agreement 1.0 > Signed-off-by: Yonghong Zhu <[email protected]> > --- > Source/C/Split/Split.c | 24 ++++++++++++++---------- > 1 file changed, 14 insertions(+), 10 deletions(-) > > diff --git a/Source/C/Split/Split.c b/Source/C/Split/Split.c index > b63aef7..14370ac 100644 > --- a/Source/C/Split/Split.c > +++ b/Source/C/Split/Split.c > @@ -1,10 +1,10 @@ > /** @file > > Split a file into two pieces at the request offset. > > -Copyright (c) 1999 - 2014, Intel Corporation. All rights > reserved.<BR> > +Copyright (c) 1999 - 2015, Intel Corporation. All rights > +reserved.<BR> > This program and the accompanying materials are licensed and made > available under the terms and conditions of the BSD License which > accompanies this distribution. The full text of the license may be > found at http://opensource.org/licenses/bsd-license.php > > @@ -56,11 +56,11 @@ Returns: > None > > --*/ > { > printf ("%s Version %d.%d %s\n", UTILITY_NAME, > UTILITY_MAJOR_VERSION, UTILITY_MINOR_VERSION, __BUILD_VERSION); > - printf ("Copyright (c) 1999-2014 Intel Corporation. All rights > reserved.\n"); > + printf ("Copyright (c) 1999-2015 Intel Corporation. All rights > + reserved.\n"); > printf ("\n SplitFile creates two Binary files either in the same > directory as the current working\n"); > printf (" directory or in the specified directory.\n"); } > > void > @@ -178,20 +178,24 @@ CreateDir ( > CHAR8* start = temp; > UINT64 index = 0; > > for (;index < strlen(temp); ++index) { > if (temp[index] == '\\' || temp[index] == '/') { > - temp[index] = 0; > - if (chdir(start)) { > - if (mkdir(start, S_IRWXU | S_IRWXG | S_IRWXO) != 0) { > - return EFI_ABORTED; > + if (temp[index + 1] != '\0') { > + tempchar = temp[index + 1]; > + temp[index + 1] = 0; > + if (chdir(start)) { > + if (mkdir(start, S_IRWXU | S_IRWXG | S_IRWXO) != 0) { > + return EFI_ABORTED; > + } > + chdir(start); > } > - chdir(start); > + start = temp + index + 1; > + temp[index] = '/'; > + temp[index + 1] = tempchar; > + } > } > - start = temp + index + 1; > - temp[index] = '/'; > - } > } > > return EFI_SUCCESS; > } > > -- > 2.6.1.windows.1 _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

