diff --git a/drivers/network/ndis/ndis/config.c b/drivers/network/ndis/ndis/config.c index 61a2da0d04a..bdd8ed288d5 100644 --- a/drivers/network/ndis/ndis/config.c +++ b/drivers/network/ndis/ndis/config.c @@ -521,9 +521,11 @@ NdisReadConfiguration( ExFreePool(KeyInformation); - if(*Status != STATUS_SUCCESS) + if(*Status != STATUS_SUCCESS) { + ExFreePool(*ParameterValue); + *ParameterValue = NULL; *Status = NDIS_STATUS_FAILURE; - else + } else *Status = NDIS_STATUS_SUCCESS; return; @@ -567,6 +569,7 @@ NdisReadConfiguration( if(!MiniportResource) { NDIS_DbgPrint(MIN_TRACE,("Insufficient resources.\n")); + ExFreePool(RegData); ExFreePool(KeyInformation); ExFreePool(*ParameterValue); *ParameterValue = NULL;