]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ShellPkg/Application/Shell/ShellParametersProtocol.c
ShellParametersProtocol - remove parsing from within quoted parameters.
[mirror_edk2.git] / ShellPkg / Application / Shell / ShellParametersProtocol.c
index 76935333d6e373fd83fdf2e0b9f01856899efdc7..5d2792ba30b233c095a1a8818d3a5c9338b7de19 100644 (file)
@@ -69,9 +69,7 @@ GetNextParameter(
   if ((*Walker)[0] == L'\"') {\r
     NextDelim = NULL;\r
     for (TempLoc = *Walker + 1 ; TempLoc != NULL && *TempLoc != CHAR_NULL ; TempLoc++) {\r
-      if (*TempLoc == L'^' && *(TempLoc+1) == L'^') {\r
-        TempLoc++;\r
-      } else if (*TempLoc == L'^' && *(TempLoc+1) == L'\"') {\r
+      if (*TempLoc == L'^' && *(TempLoc+1) == L'\"') {\r
         TempLoc++;\r
       } else if (*TempLoc == L'\"') {\r
         NextDelim = TempLoc;\r
@@ -96,10 +94,7 @@ GetNextParameter(
       *Walker = NULL;\r
     }\r
     for (TempLoc = *TempParameter ; TempLoc != NULL && *TempLoc != CHAR_NULL ; TempLoc++) {\r
-      if ((*TempLoc == L'^' && *(TempLoc+1) == L'^')\r
-       || (*TempLoc == L'^' && *(TempLoc+1) == L'|')\r
-       || (*TempLoc == L'^' && *(TempLoc+1) == L'\"')\r
-      ){\r
+      if (*TempLoc == L'^' && *(TempLoc+1) == L'\"') {\r
         CopyMem(TempLoc, TempLoc+1, StrSize(TempLoc) - sizeof(TempLoc[0]));\r
       }\r
     }\r
@@ -123,9 +118,7 @@ GetNextParameter(
     for (NextDelim = *TempParameter ; NextDelim != NULL && *NextDelim != CHAR_NULL ; NextDelim++) {\r
       if (*NextDelim == L'^' && *(NextDelim+1) == L'^') {\r
         CopyMem(NextDelim, NextDelim+1, StrSize(NextDelim) - sizeof(NextDelim[0]));\r
-      }/* else if (*NextDelim == L'^') {\r
-        *NextDelim = L' ';\r
-      }*/\r
+      }\r
     }\r
     while ((*TempParameter)[StrLen(*TempParameter)-1] == L' ') {\r
       (*TempParameter)[StrLen(*TempParameter)-1] = CHAR_NULL;\r
@@ -415,6 +408,14 @@ CleanUpShellParametersProtocol (
   return (Status);\r
 }\r
 \r
+/**\r
+  Determin if a file name represents a unicode file.\r
+\r
+  @param[in] FileName     Pointer to the filename to open.\r
+\r
+  @retval EFI_SUCCESS     The file is a unicode file.\r
+  @return An error upon failure.\r
+**/\r
 EFI_STATUS\r
 EFIAPI\r
 IsUnicodeFile(\r
@@ -447,6 +448,8 @@ IsUnicodeFile(
   Strips out quotes sections of a string.\r
 \r
   All of the characters between quotes is replaced with spaces.\r
+\r
+  @param[in,out] TheString  A pointer to the string to update.\r
 **/\r
 VOID\r
 EFIAPI\r