> Actually there is some logic, and NULL handle has a special meaning in NtTerminateProcess.
Thanks. I forgot to articulate it even as I noticed that peculiarity. That's on me.
> This would need tests to determine if the special meaning also applies to NtTerminateThread.
The most obvious test that I can think off the top of my head is whether `NtTerminateThread(NULL, _)` returns or not. Also perhaps we can copy some applicable tests from `NtTerminateProcess(NULL, _)` as well. What other tests should be done, though?
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/3447#note_42305
After investigation, it looks like the PixelOffsetModeHalf/PixelOffsetModeHighQuality is using floating point numbers, while PixelOffsetModeNone/PixelOffsetModeHighSpeed is using integers to calculate bitmap colours.
After using floating numbers, most tests are passing now.
--
https://gitlab.winehq.org/wine/wine/-/merge_requests/3568