> If you mean setting `O_NONBLOCK` on `server`, that would cause `accept` to return `EWOULDBLOCK` or `EAGAIN`.
No, I mean you can set O_NONBLOCK on "client", i.e. the socket that calls connect().
> By "clean up", do you mean only calling `WaitForSingleObject` on it, or is there more that I would need to do?
Wait for it and close the handle. It should be unnecessary if you just use nonblocking i/o with the socket, though.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2786#note_33265
> ~~Yes,~~ `SO_REUSEADDR` is a valid option on AF_UNIX sockets and is supported by this patch. I'll add a test for it. It looks like this is only true for abstract AF_UNIX sockets, which are expressly unsupported due to Windows' own lack of support for them.
Okay, I think I was assuming that "unbinding" meant doing the opposite of bind(), rather than "allowing other sockets to use that address". It'd be nice to have some tests for that functionality, then:
* test that trying to use the same address *without* deleting the socket fails (even if you close the socket handle? That part is very surprising to me.)
* test that trying to use the same address after deleting the socket succeeds, which currently isn't actually tested.
* Can the socket be used normally after deleting it?
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2786#note_33264
On Fri May 19 04:17:50 2023 +0000, Ally Sommers wrote:
> That's true, but `PATH_MAX` is 4096 on my system, while `sun_path` is a
> `char[108]`. The path returned by `wine_get_unix_file_name` can very
> easily exceed that. Thus a vararg is needed to conditionally pass the
> Unix path to wineserver if we're dealing with an AF_UNIX socket.
I still don't understand the issue. The sockaddr we pass to the server is already variable-sized. It's passed as variable-sized input data, using the "ioctl" request, with the code IOCTL_AFD_BIND. Why is sockaddr_un any different from sockaddr_in?
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2786#note_33263
Toolbar buttons won't adjust its size to fit the DPI setting. This two patches set a DPI-considered size to those buttons to make them look better in HiDPI.
Here are some comparisons on Wine with 192 DPI:
![get_open_file_before](/uploads/3e786396666fd84d824a4fa1e881d712/get_open_file_before.png)
vs
![get_open_file_after](/uploads/f6f3ed910e026d94635ba9cae8f1cc81/get_open_file_after.png)
![item_dialog_before](/uploads/936fab928adb54a3bdf055190332c30d/item_dialog_before.png)
vs
![item_dialog_after](/uploads/f74242d52dc461097368897982b0273b/item_dialog_after.png)
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2849
Esme Povirk (@madewokherd) commented about dlls/gdiplus/font.c:
> stat = GdipCreateFontFamilyFromName(L"Times New Roman", NULL, nativeFamily);
>
> if (stat == FontFamilyNotFound)
> + // Liberation Serif is free replacement of Times New Roman font
`//` comments are not allowed in Wine. Also, I don't think a comment is really needed for this.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2850#note_33255
Esme Povirk (@madewokherd) commented about dlls/gdiplus/font.c:
> stat = GdipCreateFontFamilyFromName(L"Liberation Mono", NULL, nativeFamily);
>
> if (stat == FontFamilyNotFound)
> - ERR("Missing 'Courier New' font\n");
> + stat = GdipGetGenericFontFamilySansSerif(nativeFamily);
Wouldn't it be better to fall back to a monospace font Wine ships with?
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/2850#note_33254
Block records are not processed; only the bitcode is validated.
--
v9: vkd3d-shader/dxil: Read and validate global abbreviated operands.
vkd3d-shader/dxil: Read and validate local abbreviated operands.
vkd3d-compiler: Introduce dxbc-dxil and dxbc-auto source types.
vkd3d-shader/dxbc: Introduce an option to autodetect the DXBC source type.
vkd3d-shader/dxil: Read and validate DXIL bitcode unabbreviated blocks.
https://gitlab.winehq.org/wine/vkd3d/-/merge_requests/44