summaryrefslogtreecommitdiff
path: root/SourceLevelDebugPkg/Library/DebugCommunicationLibUsb3/DebugCommunicationLibUsb3Dxe.c
diff options
context:
space:
mode:
authorZeng, Star <star.zeng@intel.com>2019-08-09 09:53:45 +0800
committerHao A Wu <hao.a.wu@intel.com>2019-08-12 09:46:47 +0800
commit4053587347a4c68402c1fc40921b7f1cdaec900e (patch)
tree57b471c66cfdf8822343baa07b70fcb5a4b12d6e /SourceLevelDebugPkg/Library/DebugCommunicationLibUsb3/DebugCommunicationLibUsb3Dxe.c
parent1a624dd7cf0db5783b27e18e6c790178d14a1e6a (diff)
downloadedk2-4053587347a4c68402c1fc40921b7f1cdaec900e.zip
edk2-4053587347a4c68402c1fc40921b7f1cdaec900e.tar.gz
edk2-4053587347a4c68402c1fc40921b7f1cdaec900e.tar.bz2
SourceLevelDebugPkg DebugCommLibUsb3: Address NULL ptr dereference case
BZ: https://bugzilla.tianocore.org/show_bug.cgi?id=2051 Original code GetConfigTable for AddrPtr first, if failed, InstalConfigTable with allocated AddrPtr. So the AddrPtr should not be NULL and the NULL pointer dereference case should be false positive. This patch is just to address the case raised from static analysis. Signed-off-by: Star Zeng <star.zeng@intel.com> Reviewed-by: Hao A Wu <hao.a.wu@intel.com>
Diffstat (limited to 'SourceLevelDebugPkg/Library/DebugCommunicationLibUsb3/DebugCommunicationLibUsb3Dxe.c')
-rw-r--r--SourceLevelDebugPkg/Library/DebugCommunicationLibUsb3/DebugCommunicationLibUsb3Dxe.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/SourceLevelDebugPkg/Library/DebugCommunicationLibUsb3/DebugCommunicationLibUsb3Dxe.c b/SourceLevelDebugPkg/Library/DebugCommunicationLibUsb3/DebugCommunicationLibUsb3Dxe.c
index eee30c8..d424546 100644
--- a/SourceLevelDebugPkg/Library/DebugCommunicationLibUsb3/DebugCommunicationLibUsb3Dxe.c
+++ b/SourceLevelDebugPkg/Library/DebugCommunicationLibUsb3/DebugCommunicationLibUsb3Dxe.c
@@ -447,7 +447,7 @@ DebugCommunicationUsb3DxeConstructor (
EFI_EVENT Event;
Status = EfiGetSystemConfigurationTable (&gUsb3DbgGuid, (VOID **) &AddrPtr);
- if (EFI_ERROR (Status)) {
+ if (EFI_ERROR (Status) || (AddrPtr == NULL)) {
//
// Instead of using local variables, install system configuration table for
// the local instance and the buffer to save instance address pointer.