/** @file\r
The implementation for Shell application IfConfig6.\r
\r
- Copyright (c) 2009 - 2014, Intel Corporation. All rights reserved.<BR>\r
+ Copyright (c) 2009 - 2015, Intel Corporation. All rights reserved.<BR>\r
\r
This program and the accompanying materials\r
are licensed and made available under the terms and conditions of the BSD License\r
ARG_LIST *ArgList;\r
ARG_LIST *ArgNode;\r
\r
- if (*String == L'\0') {\r
+ if (*String == L'\0' || *String == NULL) {\r
return NULL;\r
}\r
\r
//\r
// Copy the CONST string to a local copy.\r
//\r
- Str = (CHAR16 *) AllocateZeroPool (StrSize (String));\r
+ Str = AllocateCopyPool (StrSize (String), String);\r
ASSERT (Str != NULL);\r
- Str = StrnCpy (Str, String, StrLen (String));\r
ArgStr = Str;\r
\r
//\r
Private->OpCode = IfConfig6OpList;\r
ValueStr = ShellCommandLineGetValue (ParamPackage, L"-l");\r
if (ValueStr != NULL) {\r
- Str = (CHAR16 *) AllocateZeroPool (StrSize (ValueStr));\r
+ Str = AllocateCopyPool (StrSize (ValueStr), ValueStr);\r
ASSERT (Str != NULL);\r
-\r
- Str = StrnCpy (Str, ValueStr, StrLen (ValueStr));\r
Private->IfName = Str;\r
}\r
}\r
Private->OpCode = IfConfig6OpClear;\r
ValueStr = ShellCommandLineGetValue (ParamPackage, L"-r");\r
if (ValueStr != NULL) {\r
- Str = (CHAR16 *) AllocateZeroPool (StrSize (ValueStr));\r
+ Str = AllocateCopyPool (StrSize (ValueStr), ValueStr);\r
ASSERT (Str != NULL);\r
-\r
- Str = StrnCpy (Str, ValueStr, StrLen (ValueStr));\r
Private->IfName = Str;\r
}\r
}\r