Jacek Caban (@jacek) commented about dlls/winewayland.drv/wayland.c:
> +{
> + struct wl_display *wl_display_wrapper;
> +
> + TRACE("wayland=%p wl_display=%p\n", wayland, process_wl_display);
> +
> + wl_list_init(&wayland->thread_link);
> +
> + wayland->process_id = GetCurrentProcessId();
> + wayland->thread_id = GetCurrentThreadId();
> + wayland->wl_display = process_wl_display;
> +
> + if (!wayland->wl_display)
> + {
> + ERR("Failed to connect to wayland compositor\n");
> + return FALSE;
> + }
I think that this error condition can never happen, we fail to load the driver if process_wl_display is NULL. Also, if wl_display is always equal to process_wl_display, why do we need to store it in wayland struct?
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2275#note_26192
Jacek Caban (@jacek) commented about dlls/winewayland.drv/wayland.c:
> +
> +/**********************************************************************
> + * wayland_init
> + *
> + * Initialise a wayland instance.
> + */
> +BOOL wayland_init(struct wayland *wayland)
> +{
> + struct wl_display *wl_display_wrapper;
> +
> + TRACE("wayland=%p wl_display=%p\n", wayland, process_wl_display);
> +
> + wl_list_init(&wayland->thread_link);
> +
> + wayland->process_id = GetCurrentProcessId();
> + wayland->thread_id = GetCurrentThreadId();
Those are redundant for this commit. It's trivial to add when needed and introducing it later would make things much easier to review, because reviewer would need to jump between MR and your branch much less. I would suggest to leave thread_link, thread_id, process_id and initialized out of this MR. (Also, if process_id is always equal to `GetCurrentProcessId()`, I don't think there is much point in storing it).
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2275#note_26191
Jacek Caban (@jacek) commented about configure.ac:
> [enable_winex11_drv])
> fi
>
> +WINE_NOTICE_WITH(wayland, [false],
> + [Wayland ${notice_platform}development files not found, the Wayland driver won't be supported.],
> + [enable_winewayland_drv])
> +
This chunk makes little sense on its own, it could just be added in a commit that introduces wayland-client checks. This commit doesn't really need to modify configure more than what tools/make_makefiles does.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2275#note_26190
The goal is to eventually move all interfaces from each driver's `mmdevdrv.c` into `mmdevapi`.
--
v5: wine{alsa,coreaudio,oss,pulse}: Move test_connect handling into mmdevapi.
mmdevapi: Use UTF-16 for client name in "test_connect_params" and "create_stream_params" structs.
winepulse: Move process_attach and process_detach handling into mmdevapi.
mmdevapi: Query MemoryWineUnixFuncs virtual memory and store the resulting handle.
wine{alsa,coreaudio,oss,pulse}: Return STATUS_SUCCESS for unused unixlib functions.
https://gitlab.winehq.org/wine/wine/-/merge_requests/1543
--
v2: riched20: Implement ITextDocument::Freeze and ITextDocument::Unfreeze.
riched20: Don't assume that TxDraw preserves the device context's brush selection.
riched20/tests: Test for ITextDocument::Freeze and ITextDocument::Unfreeze.
https://gitlab.winehq.org/wine/wine/-/merge_requests/2331