- StrCat(CurrentItemPackage->Value, L" ");\r
- StrCat(CurrentItemPackage->Value, Argv[LoopCounter]);\r
+ //\r
+ // the parameter has spaces. must be quoted.\r
+ //\r
+ CurrentItemPackage->Value = ReallocatePool(ValueSize, ValueSize + StrSize(Argv[LoopCounter]) + sizeof(CHAR16) + sizeof(CHAR16) + sizeof(CHAR16), CurrentItemPackage->Value);\r
+ ASSERT(CurrentItemPackage->Value != NULL);\r
+ if (ValueSize == 0) {\r
+ StrCpy(CurrentItemPackage->Value, L"\"");\r
+ StrCat(CurrentItemPackage->Value, Argv[LoopCounter]);\r
+ StrCat(CurrentItemPackage->Value, L"\"");\r
+ } else {\r
+ StrCat(CurrentItemPackage->Value, L" ");\r
+ StrCat(CurrentItemPackage->Value, L"\"");\r
+ StrCat(CurrentItemPackage->Value, Argv[LoopCounter]);\r
+ StrCat(CurrentItemPackage->Value, L"\"");\r
+ }\r
+ ValueSize += StrSize(Argv[LoopCounter]) + sizeof(CHAR16);\r