Some games with support for the haptic feedback and speaker features of the Sony DualSense controller select the controller's audio output by filtering on the ContainerId IMMDevice property to find one that matches the controller's HID's. This MR, together with !359, adds support for exposing such a ContainerId to applications.
I marked this MR as a draft because I understand that the way the ���guid��� is generated is far from ideal. Furthermore, I will need to map from sysfs to container Id in other components as well (`winebus` for the HID device, and possibly `winealsa` and other audio drivers), so moving that part elsewhere would make sense. However, I think I will need help with those tasks.
--
v2: winepulse: Add support for containerId property from sysfs path
winepulse: Store PulseAudio device's sysfs path when available
https://gitlab.winehq.org/wine/wine/-/merge_requests/360
Nikolay Sivov (@nsivov) commented about include/d2derr.h:
> #ifndef __WINE_D2DERR_H
> #define __WINE_D2DERR_H
>
> +#define D2DERR_NOT_FOUND HRESULT_FROM_WIN32(ERROR_NOT_FOUND)
I don't see in 10.0.2200.0 SDK. Where does it come from?
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/388#note_3514
Chip Davis (@cdavis5e) commented about dlls/scrrun/filesystem.c:
> if((attrs == INVALID_FILE_ATTRIBUTES) || !(attrs & FILE_ATTRIBUTE_DIRECTORY))
> return CTL_E_PATHNOTFOUND;
>
> + _wsplitpath(source, src_drive, src_dir, file_name, file_ext);
> + len = lstrlenW(destination);
> +
> + if (destination[len-1] == '\\') {
What about `'/'`? I know that's a valid separator to the Win32 API. Is it one to this API?
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/391#note_3508
--
v3: regedit: Directly use RegQueryValueExW() instead of a helper function.
regedit: Correctly calculate REG_MULTI_SZ size before reading from the buffer.
regedit: Remove unneeded valueDataLen override for DWORD values.
https://gitlab.winehq.org/wine/wine/-/merge_requests/392