On Wed Dec 18 16:32:46 2024 +0000, Bernhard Übelacker wrote:
> Having PE-ASan in CI at the end would be great, but unfortunately my
> attempt involved building llvm-mingw/llvm-project with a few patches,
> which I attempted upstreaming for quite some time.
> Then building wine with it needs also a few patches, and running it
> involves currently an ugly mix of a non-ASan and an ASan build. Some
> more old/outdated details are
> [here](https://gitlab.winehq.org/wine/wine/-/merge_requests/6791#note_86908),
> for running just the executables below wine/programs.
> But running the tests locally produced quite a few unfinished
> [patches](https://gitlab.winehq.org/bernhardu/wine/-/commits/asan-pe_2024-12…
> where I try to get the more obvious and hopefully freeze-compatible ones
> in, while waiting on progress with llvm-project.
I see, thanks.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7041#note_90845
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53953
This is not what I would do. Bug 53953 amounts to "some users didn't install
32-bit headers, so we used the wrong ones, which are usually identical so it
doesn't matter". From the perspective of using the software as intended, this is
unilaterally user error.
From a more utilitarian perspective, this is a regression, and ensuring that
we're not using the *functionally* incorrect headers is a problem we have to
solve anyway. (Cf. GStreamer, which may be the only interesting case.)
On the other hand, it's a regression that's already been in two major versions.
Anyone building Wine on Fedora has surely already installed the right headers by
now.
I'm submitting this patch in an attempt to garner a decreed resolution to the
bug, one way or another, but again, this solution is not the one I would
prescribe if it were my choice.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7022
Commit f784374bcb5195c918754b1da6142a618a0da7dd introduced a cyclic reference between desktop and global hook through global hook table. So now if a hook was set and then not explicitly unset and the process was just terminated the hook, desktop, thread and some other related objects are leaked (which is displayed by wineserver on prefix shutdown in this case).
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7039
The preprocessor condition to cover pre-2013 VisualStudio around
C99 support actually also admitted current versions of GCC and
breaks GCC in C23 mode.
Address this by explicitly checking for GCC which, by definition,
then does not qualify as VisualStudio.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/7040