Module: wine Branch: master Commit: e2f1f39b52715f61b574f11d5e4de584d8b440b6 URL: http://source.winehq.org/git/wine.git/?a=commit;h=e2f1f39b52715f61b574f11d5e... Author: Juan Lang <juan.lang(a)gmail.com> Date: Thu Oct 25 08:10:59 2007 -0700 setupapi: Include enumerator string as part of device instance ID. --- dlls/setupapi/devinst.c | 11 ++++++----- 1 files changed, 6 insertions(+), 5 deletions(-) diff --git a/dlls/setupapi/devinst.c b/dlls/setupapi/devinst.c index 531597d..9f27333 100644 --- a/dlls/setupapi/devinst.c +++ b/dlls/setupapi/devinst.c @@ -2176,16 +2176,17 @@ static void SETUPDI_EnumerateMatchingDeviceInstances(struct DeviceInfoSet *set, if ((flags & DIGCF_ALLCLASSES) || IsEqualGUID(class, &deviceClass)) { - static const WCHAR fmt[] = {'%','s','\\','%','s',0}; + static const WCHAR fmt[] = + {'%','s','\\','%','s','\\','%','s',0}; LPWSTR instanceId; instanceId = HeapAlloc(GetProcessHeap(), 0, - (lstrlenW(deviceName) + - lstrlenW(deviceInstance) + 2) * sizeof(WCHAR)); + (lstrlenW(enumerator) + lstrlenW(deviceName) + + lstrlenW(deviceInstance) + 3) * sizeof(WCHAR)); if (instanceId) { - sprintfW(instanceId, fmt, deviceName, - deviceInstance); + sprintfW(instanceId, fmt, enumerator, + deviceName, deviceInstance); SETUPDI_AddDeviceToSet(set, &deviceClass, 0 /* FIXME: DevInst */, instanceId, FALSE, NULL);