From: Zebediah Figura Subject: Re: [PATCH v5 2/2] hidclass.sys: use IoRegisterDeviceInterface Message-Id: Date: Fri, 5 Oct 2018 14:53:03 -0500 In-Reply-To: <682e045c-a23d-ad77-824e-14d2e1836d1b@codeweavers.com> References: <682e045c-a23d-ad77-824e-14d2e1836d1b@codeweavers.com> On 05/10/18 08:09, Aric Stewart wrote: > devinfo = SetupDiGetClassDevsW(&GUID_DEVCLASS_HIDCLASS, NULL, NULL, DIGCF_DEVICEINTERFACE); > if (!devinfo) > @@ -138,13 +112,22 @@ NTSTATUS HID_LinkDevice(DEVICE_OBJECT *device) > FIXME( "failed to Register Device Info %x\n", GetLastError()); > goto error; > } > - if (!SetupDiCreateDeviceInterfaceW( devinfo, &Data, &hidGuid, NULL, 0, NULL)) > + SetupDiDestroyDeviceInfoList(devinfo); IoRegisterDeviceInterface() also calls SetupDiCreateDeviceInfo(), so do we need to make any setupapi calls here at all? I see the flag DICD_INHERIT_CLASSDRVS differs, but we don't implement that, and I'm not entirely sure from the documentation what it's supposed to do, or whether or not it's correct here or in IoRegisterDeviceInterface().