Davide Beatrici (@davidebeatrici) commented about dlls/wineoss.drv/mmdevdrv.c:
-static void get_device_guid(EDataFlow flow, const char *device, GUID *guid) +void WINAPI get_device_guid(EDataFlow flow, const char *device, GUID *guid) { HKEY key = NULL, dev_key; DWORD type, size = sizeof(*guid); WCHAR key_name[256];
- const unsigned int dev_size = strlen(device) + 1;
- OSSDevice *oss_dev = HeapAlloc(GetProcessHeap(), 0, offsetof(OSSDevice, devnode[dev_size]));
- if(oss_dev){
oss_dev->flow = flow;
oss_dev->guid = *guid;
memcpy(oss_dev->devnode, device, dev_size);
device_add(oss_dev);
- }
An `HeapAlloc()` failure previously resulted in `GetEndpointIDs()` returning early.
Is the change in behavior okay?