Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jaben Carsey <jaben.car...@intel.com>

---
 ShellPkg/Application/Shell/Shell.c   | 6 +++++-
 ShellPkg/Application/Shell/Shell.uni | 1 +
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/ShellPkg/Application/Shell/Shell.c 
b/ShellPkg/Application/Shell/Shell.c
index 12daff9..b06c1ef 100644
--- a/ShellPkg/Application/Shell/Shell.c
+++ b/ShellPkg/Application/Shell/Shell.c
@@ -2518,7 +2518,11 @@ SetupAndRunCommandOrFile(
   // Now print errors
   //
   if (EFI_ERROR(Status)) {
-    ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_SHELL_ERROR), 
ShellInfoObject.HiiHandle, (VOID*)(Status));
+    if (ShellCommandGetCurrentScriptFile() == NULL || 
ShellCommandGetCurrentScriptFile()->CurrentCommand == NULL) {
+      ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_SHELL_ERROR), 
ShellInfoObject.HiiHandle, (VOID*)(Status));
+    } else {
+      ShellPrintHiiEx(-1, -1, NULL, STRING_TOKEN (STR_SHELL_ERROR_SCRIPT), 
ShellInfoObject.HiiHandle, (VOID*)(Status), 
ShellCommandGetCurrentScriptFile()->CurrentCommand->Line);
+    }
   }
 
   //
diff --git a/ShellPkg/Application/Shell/Shell.uni 
b/ShellPkg/Application/Shell/Shell.uni
index 3947d01..ef69f89 100644
--- a/ShellPkg/Application/Shell/Shell.uni
+++ b/ShellPkg/Application/Shell/Shell.uni
@@ -40,6 +40,7 @@
 #string STR_SHELL_CRLF                #language en-US "\r\n"
 
 #string STR_SHELL_ERROR               #language en-US  "%NCommand Error 
Status: %r\r\n"
+#string STR_SHELL_ERROR_SCRIPT        #language en-US  "%NScript Error Status: 
%r (line number %d)\r\n"
 
 #string STR_SHELL_INVALID_MAPPING     #language en-US "%N'%B%s%N' is not a 
valid mapping.\r\n"
 #string STR_SHELL_INVALID_SPLIT       #language en-US "Invalid use of pipe 
(%B|%N).\r\n"
-- 
2.7.2.windows.1

_______________________________________________
edk2-devel mailing list
edk2-devel@lists.01.org
https://lists.01.org/mailman/listinfo/edk2-devel

Reply via email to