]> git.proxmox.com Git - mirror_edk2.git/blobdiff - EmbeddedPkg/Drivers/Lan9118Dxe/Lan9118Dxe.c
EmbeddedPkg/Lan9118Dxe: Fixed dereferencing optional NULL pointer
[mirror_edk2.git] / EmbeddedPkg / Drivers / Lan9118Dxe / Lan9118Dxe.c
index b269c60f39eb73fa8d39bfcc6a6dbb346121d4d2..ec0175408a7f89eb44c590cfcf427f3026e2efb4 100644 (file)
@@ -918,7 +918,7 @@ SnpGetStatus (
     TxStatus = MmioRead32 (LAN9118_TX_STATUS);\r
     PacketTag = TxStatus >> 16;\r
     TxStatus = TxStatus & 0xFFFF;\r
-    if ((TxStatus & TXSTATUS_ES) && TxStatus != (TXSTATUS_ES | TXSTATUS_NO_CA)) {\r
+    if ((TxStatus & TXSTATUS_ES) && (TxStatus != (TXSTATUS_ES | TXSTATUS_NO_CA))) {\r
       DEBUG ((EFI_D_ERROR, "LAN9118: There was an error transmitting. TxStatus=0x%08x:", TxStatus));\r
       if (TxStatus & TXSTATUS_NO_CA) {\r
         DEBUG ((EFI_D_ERROR, "- No carrier\n"));\r
@@ -939,7 +939,7 @@ SnpGetStatus (
         DEBUG ((EFI_D_ERROR, "- Lost carrier during Tx\n"));\r
       }\r
       return EFI_DEVICE_ERROR;\r
-    } else {\r
+    } else if (TxBuff != NULL) {\r
       LanDriver->Stats.TxTotalFrames += 1;\r
       *TxBuff = LanDriver->TxRing[PacketTag % LAN9118_TX_RING_NUM_ENTRIES];\r
     }\r