On Tue Mar 24 13:58:38 2026 +0000, Rémi Bernon wrote:
Could we just use `hdc = hdc_src` (ie: hdc_src both for NtGdiAlphaBlend dest and source) instead of creating another temporary one? @rbernon Hi Rémi, I had tested the solution you mentioned before, which uses hdc_src as both the destination and source for NtGdiAlphaBlend. However, doing so causes the NtGdiAlphaBlend call to fail, reporting an "_Overlapping coords_" error message. I added some debug logs in the function NtGdiAlphaBlend: changed the log level from WARN to ERR, and the test results are as follows:
{width=900 height=110} I also checked the introduction of the AlphaBlend function on MSDN, which states: "_If the source and destination are the same surface, that is, they are both the screen or the same memory bitmap and the source and destination rectangles overlap, an error occurs and the function returns FALSE._"(link:https://learn.microsoft.com/en-us/windows/win32/api/wingdi/nf-wingdi-alphabl...), According to MSDN, the source and dest should not be the same in function AlphaBlend. -- https://gitlab.winehq.org/wine/wine/-/merge_requests/10324#note_133540