ShellPkg: Fix the last command doesn't work in a script.

When the last line in a script file is not an empty line the Shell
will not execute the command in the last line. The patch refine the
logic in function 'ShellFileHandleReturnLine' and fix the issue.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jaben Carsey <jaben.carsey@intel.com>
Reviewed-by: Qiu Shumin <shumin.qiu@intel.com>
This commit is contained in:
Qiu Shumin 2016-02-18 13:12:58 +08:00
parent e665a69d9d
commit f79d7b62ba
1 changed files with 4 additions and 1 deletions

View File

@ -2,7 +2,7 @@
Provides interface to shell functionality for shell commands and applications.
Copyright 2016 Dell Inc.
Copyright (c) 2006 - 2015, Intel Corporation. All rights reserved.<BR>
Copyright (c) 2006 - 2016, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials
are licensed and made available under the terms and conditions of the BSD License
which accompanies this distribution. The full text of the license may be found at
@ -4071,6 +4071,9 @@ ShellFileHandleReturnLine(
Status = ShellFileHandleReadLine(Handle, RetVal, &Size, FALSE, Ascii);
}
if (Status == EFI_END_OF_FILE && *RetVal != CHAR_NULL) {
Status = EFI_SUCCESS;
}
if (EFI_ERROR(Status) && (RetVal != NULL)) {
FreePool(RetVal);
RetVal = NULL;