Elizabeth Figura zfigura@codeweavers.com writes:
On Monday, 22 September 2025 13:31:49 CDT Paul Gofman wrote:
On 9/22/25 12:14, Elizabeth Figura wrote:
On the other hand, I am reminded of an unrelated bug, involving a program (I don't have the name unfortunately) which copies ws2_32.dll to a temp file with a randomly generated name and attempts to load the copy. This fails on Wine because ws2_32 has a unixlib, and we derive the name of the unixlib from the path of the DLL. In order to fix this bug we would probably need to embed the name of the unixlib in the DLL itself rather than relying on its path. If we did that the DLLs for winepulse and winealsa would no longer be identical.
That doesn't look quite related to the discussed issue? This part is about how we find Unix library.
The point is that if we were to do this, winepulse and winealsa would no longer have the exact same contents, which would sidestep this problem.
For this specific case, the plan is to get rid of these empty PE files and make it possible for mmdevapi to load the appropriate Unix backend directly. Presumably the same mechanism could then be used to handle the ws2_32 case.
Of course that doesn't change the fact that hardlinking files behind our back is not a good idea on NixOS's part.