mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-04 17:24:09 +00:00
setupapi: Respect samDesired in SetupDiOpenClassRegKeyExW.
This commit is contained in:
parent
243ac3ed75
commit
a9d74cf994
|
@ -2337,7 +2337,6 @@ HKEY WINAPI SetupDiOpenClassRegKeyExW(
|
||||||
PCWSTR MachineName,
|
PCWSTR MachineName,
|
||||||
PVOID Reserved)
|
PVOID Reserved)
|
||||||
{
|
{
|
||||||
WCHAR bracedGuidString[39];
|
|
||||||
HKEY hClassesKey;
|
HKEY hClassesKey;
|
||||||
HKEY hClassKey;
|
HKEY hClassKey;
|
||||||
LPCWSTR lpKeyName;
|
LPCWSTR lpKeyName;
|
||||||
|
@ -2363,33 +2362,46 @@ HKEY WINAPI SetupDiOpenClassRegKeyExW(
|
||||||
return INVALID_HANDLE_VALUE;
|
return INVALID_HANDLE_VALUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (RegOpenKeyExW(HKEY_LOCAL_MACHINE,
|
if (!ClassGuid)
|
||||||
lpKeyName,
|
|
||||||
0,
|
|
||||||
KEY_ALL_ACCESS,
|
|
||||||
&hClassesKey))
|
|
||||||
{
|
{
|
||||||
return INVALID_HANDLE_VALUE;
|
if (RegOpenKeyExW(HKEY_LOCAL_MACHINE,
|
||||||
}
|
lpKeyName,
|
||||||
|
0,
|
||||||
if (ClassGuid == NULL)
|
samDesired,
|
||||||
|
&hClassesKey))
|
||||||
|
{
|
||||||
|
return INVALID_HANDLE_VALUE;
|
||||||
|
}
|
||||||
return hClassesKey;
|
return hClassesKey;
|
||||||
|
|
||||||
SETUPDI_GuidToString(ClassGuid, bracedGuidString);
|
|
||||||
|
|
||||||
if (RegOpenKeyExW(hClassesKey,
|
|
||||||
bracedGuidString,
|
|
||||||
0,
|
|
||||||
KEY_ALL_ACCESS,
|
|
||||||
&hClassKey))
|
|
||||||
{
|
|
||||||
RegCloseKey(hClassesKey);
|
|
||||||
return INVALID_HANDLE_VALUE;
|
|
||||||
}
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
WCHAR bracedGuidString[39];
|
||||||
|
|
||||||
RegCloseKey(hClassesKey);
|
SETUPDI_GuidToString(ClassGuid, bracedGuidString);
|
||||||
|
|
||||||
return hClassKey;
|
if (RegOpenKeyExW(HKEY_LOCAL_MACHINE,
|
||||||
|
lpKeyName,
|
||||||
|
0,
|
||||||
|
samDesired,
|
||||||
|
&hClassesKey))
|
||||||
|
{
|
||||||
|
return INVALID_HANDLE_VALUE;
|
||||||
|
}
|
||||||
|
if (RegOpenKeyExW(hClassesKey,
|
||||||
|
bracedGuidString,
|
||||||
|
0,
|
||||||
|
samDesired,
|
||||||
|
&hClassKey))
|
||||||
|
{
|
||||||
|
RegCloseKey(hClassesKey);
|
||||||
|
return INVALID_HANDLE_VALUE;
|
||||||
|
}
|
||||||
|
|
||||||
|
RegCloseKey(hClassesKey);
|
||||||
|
|
||||||
|
return hClassKey;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/***********************************************************************
|
/***********************************************************************
|
||||||
|
|
Loading…
Reference in a new issue