On Mon Oct 20 20:56:40 2025 +0000, Rémi Bernon wrote:
> Sorry to have missed that.
> Fwiw I think the lock (and probably a different one, there's no need to
> lock the fd cache) should be taken again within `cache_inproc_sync` but
> only for the things where it's actually necessary.
> It does rather costly calls, like `mmap` and there's things like
> `InterlockedCompareExchangePointer` in it which are rather pointless otherwise.
Nvm, I guess the entire sync retrieval and caching needs to be atomic. Anyway, still I think the compare exchange looks confusing if it always happens inside a lock.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/9234#note_119098
The goal here is to make XIM input locale independent, so changing LC_MESSAGES and LC_CTYPE (to change code pages on PE side) can be done without breaking the IME, when set locale isn't set up on the host system. To achieve this, I switched XmbLookupString to Xutf8LookupString, because it *seems* to achieve what I wrote above.
Marked as draft because idk if this makes sense at all.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/9235
Sorry to have missed that.
Fwiw I think the lock (and probably a different one, there's no need to lock the fd cache) should be taken again within `cache_inproc_sync` but only for the things where it's actually necessary.
It does rather costly calls, like `mmap` and there's things like `InterlockedCompareExchangePointer` in it which are rather pointless otherwise.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/9234#note_119096