diff options
Diffstat (limited to 'ShellPkg/Application/Shell/ShellManParser.c')
-rw-r--r-- | ShellPkg/Application/Shell/ShellManParser.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/ShellPkg/Application/Shell/ShellManParser.c b/ShellPkg/Application/Shell/ShellManParser.c index fe9facb483..e184c78d4f 100644 --- a/ShellPkg/Application/Shell/ShellManParser.c +++ b/ShellPkg/Application/Shell/ShellManParser.c @@ -32,17 +32,23 @@ GetManFileName( )
{
CHAR16 *Buffer;
- ASSERT(ManFileName != NULL);
+ if (ManFileName == NULL) {
+ return (NULL);
+ }
//
// Fix the file name
//
if (StrnCmp(ManFileName+StrLen(ManFileName)-4, L".man", 4)==0) {
Buffer = AllocateZeroPool(StrSize(ManFileName));
- StrCpy(Buffer, ManFileName);
+ if (Buffer != NULL) {
+ StrCpy(Buffer, ManFileName);
+ }
} else {
Buffer = AllocateZeroPool(StrSize(ManFileName) + 4*sizeof(CHAR16));
- StrCpy(Buffer, ManFileName);
- StrCat(Buffer, L".man");
+ if (Buffer != NULL) {
+ StrCpy(Buffer, ManFileName);
+ StrCat(Buffer, L".man");
+ }
}
return (Buffer);
}
|