mirror of
https://github.com/reactos/reactos.git
synced 2024-09-06 10:52:52 +00:00
[NTOSKRNL]
- Set the resource list pointer to NULL after we free it - Fixes a double-free issue in the resource conflict resolution code svn path=/trunk/; revision=47725
This commit is contained in:
parent
186dc06a99
commit
16f616a8de
|
@ -243,6 +243,7 @@ IopCreateResourceListFromRequirements(
|
||||||
if (ReqDesc->Option == 0)
|
if (ReqDesc->Option == 0)
|
||||||
{
|
{
|
||||||
ExFreePool(*ResourceList);
|
ExFreePool(*ResourceList);
|
||||||
|
*ResourceList = NULL;
|
||||||
return STATUS_CONFLICTING_ADDRESSES;
|
return STATUS_CONFLICTING_ADDRESSES;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -258,6 +259,7 @@ IopCreateResourceListFromRequirements(
|
||||||
if (ReqDesc->Option == 0)
|
if (ReqDesc->Option == 0)
|
||||||
{
|
{
|
||||||
ExFreePool(*ResourceList);
|
ExFreePool(*ResourceList);
|
||||||
|
*ResourceList = NULL;
|
||||||
return STATUS_CONFLICTING_ADDRESSES;
|
return STATUS_CONFLICTING_ADDRESSES;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -273,6 +275,7 @@ IopCreateResourceListFromRequirements(
|
||||||
if (ReqDesc->Option == 0)
|
if (ReqDesc->Option == 0)
|
||||||
{
|
{
|
||||||
ExFreePool(*ResourceList);
|
ExFreePool(*ResourceList);
|
||||||
|
*ResourceList = NULL;
|
||||||
return STATUS_CONFLICTING_ADDRESSES;
|
return STATUS_CONFLICTING_ADDRESSES;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -288,6 +291,7 @@ IopCreateResourceListFromRequirements(
|
||||||
if (ReqDesc->Option == 0)
|
if (ReqDesc->Option == 0)
|
||||||
{
|
{
|
||||||
ExFreePool(*ResourceList);
|
ExFreePool(*ResourceList);
|
||||||
|
*ResourceList = NULL;
|
||||||
return STATUS_CONFLICTING_ADDRESSES;
|
return STATUS_CONFLICTING_ADDRESSES;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -302,6 +306,7 @@ IopCreateResourceListFromRequirements(
|
||||||
if (ReqDesc->Option == 0)
|
if (ReqDesc->Option == 0)
|
||||||
{
|
{
|
||||||
ExFreePool(*ResourceList);
|
ExFreePool(*ResourceList);
|
||||||
|
*ResourceList = NULL;
|
||||||
return STATUS_CONFLICTING_ADDRESSES;
|
return STATUS_CONFLICTING_ADDRESSES;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -852,6 +857,7 @@ IopAssignDeviceResources(
|
||||||
{
|
{
|
||||||
DPRINT1("Boot resources for %wZ cause a resource conflict!\n", &DeviceNode->InstancePath);
|
DPRINT1("Boot resources for %wZ cause a resource conflict!\n", &DeviceNode->InstancePath);
|
||||||
ExFreePool(DeviceNode->ResourceList);
|
ExFreePool(DeviceNode->ResourceList);
|
||||||
|
DeviceNode->ResourceList = NULL;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue