Revision: 14144
          http://edk2.svn.sourceforge.net/edk2/?rev=14144&view=rev
Author:   jcarsey
Date:     2013-02-22 18:20:55 +0000 (Fri, 22 Feb 2013)
Log Message:
-----------
ShellPkg : Check pointer before dereferencing

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Jaben Carsey <[email protected]>
Reviewed-by: Erik Bjorge <[email protected]>

Modified Paths:
--------------
    trunk/edk2/ShellPkg/Library/UefiShellLevel2CommandsLib/Cp.c

Modified: trunk/edk2/ShellPkg/Library/UefiShellLevel2CommandsLib/Cp.c
===================================================================
--- trunk/edk2/ShellPkg/Library/UefiShellLevel2CommandsLib/Cp.c 2013-02-21 
05:54:24 UTC (rev 14143)
+++ trunk/edk2/ShellPkg/Library/UefiShellLevel2CommandsLib/Cp.c 2013-02-22 
18:20:55 UTC (rev 14144)
@@ -146,14 +146,16 @@
     Size          = 0;
     StrnCatGrow(&TempName, &Size, Source, 0);
     StrnCatGrow(&TempName, &Size, L"\\*", 0);
-    ShellOpenFileMetaArg((CHAR16*)TempName, EFI_FILE_MODE_READ, &List);
-    *TempName = CHAR_NULL;
-    StrnCatGrow(&TempName, &Size, Dest, 0);
-    StrnCatGrow(&TempName, &Size, L"\\", 0);
-    ShellStatus = ValidateAndCopyFiles(List, TempName, SilentMode, TRUE, Resp);
-    ShellCloseFileMetaArg(&List);
-    FreePool(TempName);
-    Size = 0;
+    if (TempName != NULL) {
+      ShellOpenFileMetaArg((CHAR16*)TempName, EFI_FILE_MODE_READ, &List);
+      *TempName = CHAR_NULL;
+      StrnCatGrow(&TempName, &Size, Dest, 0);
+      StrnCatGrow(&TempName, &Size, L"\\", 0);
+      ShellStatus = ValidateAndCopyFiles(List, TempName, SilentMode, TRUE, 
Resp);
+      ShellCloseFileMetaArg(&List);
+      SHELL_FREE_NON_NULL(TempName);
+      Size = 0;
+    }
   } else {
     //
     // open file with create enabled

This was sent by the SourceForge.net collaborative development platform, the 
world's largest Open Source development site.


------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_d2d_feb
_______________________________________________
edk2-commits mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/edk2-commits

Reply via email to