[SETUPAPI]

Load a property sheet extension dll only once, otherwise we might leak module handles.

svn path=/trunk/; revision=64734
This commit is contained in:
Eric Kohl 2014-10-13 18:31:55 +00:00
parent 6d6e0cda0c
commit 4173674a62

View file

@ -1272,14 +1272,22 @@ SetupDiGetClassDevPropertySheetsW(
if (DeviceInfoData)
{
struct DeviceInfo *devInfo = (struct DeviceInfo *)DeviceInfoData->Reserved;
devInfo->hmodDevicePropPageProvider = hModule;
devInfo->pDevicePropPageProvider = pPropPageProvider;
if (devInfo->hmodDevicePropPageProvider == NULL)
{
devInfo->hmodDevicePropPageProvider = hModule;
devInfo->pDevicePropPageProvider = pPropPageProvider;
}
}
else
{
struct DeviceInfoSet *devInfoSet = (struct DeviceInfoSet *)DeviceInfoSet;
devInfoSet->hmodClassPropPageProvider = hModule;
devInfoSet->pClassPropPageProvider = pPropPageProvider;
if (devInfoSet->hmodClassPropPageProvider == NULL)
{
devInfoSet->hmodClassPropPageProvider = hModule;
devInfoSet->pClassPropPageProvider = pPropPageProvider;
}
}
InitialNumberOfPages = PropertySheetHeader->nPages;