}\r
\r
//\r
- // If file name does not equal to "." or "..",\r
+ // If file name does not equal to "." or ".." and not trailed with "\..",\r
// then we trim the leading/trailing blanks and trailing dots\r
//\r
- if (StrCmp (FileName, L".") != 0 && StrCmp (FileName, L"..") != 0) {\r
+ if (StrCmp (FileName, L".") != 0 && StrCmp (FileName, L"..") != 0 && \r
+ ((StrLen (FileName) >= 3) ? (StrCmp (&FileName[StrLen (FileName) - 3], L"\\..") != 0) : TRUE)) {\r
//\r
// Trim leading blanks\r
//\r
WinNtSimpleFileSystemSetInfo (&NewPrivateFile->EfiFile, &gEfiFileInfoGuid, InfoSize, Info);\r
}\r
\r
-Done: ;\r
+Done:\r
FreePool (FileName);\r
\r
if (EFI_ERROR (Status)) {\r