Connor McAdams (@cmcadams) commented about dlls/setupapi/tests/devinst.c:
+ const struct reg_property *prop = ®_props[i]; + BOOL todo = prop->reg_prop != SPDRP_CLASSGUID; + DWORD size = 0, type = 0; + DEVPROPKEY key; + BYTE buf[80]; + + key.fmtid = DEVPKEY_Device_DeviceDesc.fmtid; + key.pid = prop->reg_prop + 2; + memset(buf, 0, sizeof(buf)); + + winetest_push_context("reg_props[%lu] (%#lx)", i, prop->reg_prop); + SetLastError(0xdeadbeef); + ret = pSetupDiSetDevicePropertyW(set, &device_data, &key, prop->devprop_type, prop->devprop_value, + prop->devprop_size, 0); + ok(ret, "Failed to set property, error %#lx.\n", GetLastError()); + We should check if `GetLastError()` has the error value we set, or if it's cleared.
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/8515#note_109483