- [KERNEL32_WINETEST] Sync to wine-10.0
- [KERNEL32_WINETEST] Define out tests we can't yet build, fix test failures for WS03-Win 10 1607.
- [KERNEL32_WINETEST] Consolidate header hacks needed for the winesync in winehacks.h. This documents what incompatibilities we need to work around in our and Wine headers in one place.
Wine msvcrt behaves like Vista+ here.
Also disable related static_crt tests, because it isn't even well defined how they should behave and what to compare it to.
- Remove the hack for PAGE_NOCACHE flag that was introduced in commits aa52dc7498 (r68611) and 33d53d44da (r68612) for CORE-9808. The test case for PAGE_NOCACHE, introduced in 7346aece52 (r68351), did not expose any additional problems without it anymore.
- Allow a PAGE_WRITECOMBINE flag. Fixes a regression introduced in 59ae6b3e15 (CORE-20298) that caused the OpenGL ICD in Nvidia 78.05 driver to not use GPU hardware to accelerate OpenGL anymore (reported and tested by winterhell on Discord).
- Add a test case for MmMapViewOfSection with PAGE_WRITECOMBINE. The test passes on Windows 2003 SP2 and Vista RTM.
- Fix ASSERTs in MI_MAKE_HARDWARE_PTE functions.
The code called winetest_setlocation, which calls strrchr, which clears the direction flag, so the test was succeeding on x86, even though strlen never changes it. On Windows it somehow depends on whether you compile the test on the command line or inside VS.
This change fixes the test by explicitly reading eflags before using winetest_ok and placing a MemoryBarrier in between.
The tests fail, because this is more of a unit test, than an apitest. It's questionable, whether running it on Windows is even useful.
The tests will be marked as todo on Windows, but not on ReactOS.
- [INCLUDE/WINE] Add GetNTVersion() macro, useful for determining Windows versions in Wine tests we need to bring up for older Windows versions.
- [INCLUDE/WINE] Header changes needed for kernel32 winetest
- [WINETESTS] Perform any fixes needed from breaking header changes