reactos/win32ss
Oleg Dubinskiy dc483bd700
[WIN32SS:ENG] EngCreateBitmap: mark created bitmaps as API bitmaps (#4146)
CORE-17561

Set the API_BITMAP flag for bitmaps created by EngCreateBitmap().

This avoids failure when created bitmap is passed to NtGdiSelectBitmap(), since it checks for this flag and fails if it isn't set.
Otherwise, if failure occurs, the bitmap is hot handled properly.
Setting this flag outside of that function is not an option at all, because it is a public (exported) function, and in many cases it's called directly by the caller (in case with MS DDraw stack, it can be called also by dxg.sys from dxgthk!EngCreateBitmap, which directly calls win32k!EngCreateBitmap).

In particular, it allows Windows XP/2003 DirectDraw stack (ddraw.dll & dxg.sys) to properly work in ReactOS (in software emulation mode), even on real hardware. So now, a lot of DirectX 1-7 apps and games (whose can work withoug hardware acceleation), are working properly with ddraw.dll + dxg.sys replacement! Also Justin Miller (DarkFire01) confirmed that even Direct3D software emulation now also works correctly on real hardware!
2021-12-29 16:51:23 +01:00
..
drivers Revert "[VIDEOPRT] Fix updating of new registry path values" 2021-12-08 18:36:34 +01:00
gdi [WIN32SS:ENG] EngCreateBitmap: mark created bitmaps as API bitmaps (#4146) 2021-12-29 16:51:23 +01:00
include [NTUSER][USER32] Use async way in TileWindows and CascadeWindows (#4167) 2021-12-16 09:52:02 +09:00
printing [APITESTS][NTVDM][SPOOLSV] Add the missing ENABLE_EXPORTS property as these EXE targets have function exports. 2021-12-04 01:17:32 +01:00
reactx [WIN32SS][NTDDRAW] Improve DxEngGetDCState type 2 implementation (#4176) 2021-12-20 21:27:13 +01:00
user [NTUSER] Use call procedure handle if available (#4178) 2021-12-23 11:53:18 +09:00
CMakeLists.txt [WIN32K] Fix getting long value from float object 2021-03-31 18:35:31 +02:00
napi.h
pch.h [Win32SS] Fix build 2020-04-19 18:49:46 -05:00
sys-stubs.S
w32ksvc.db
w32ksvc.h
win32k.h
win32k.rc
win32k.spec [WIN32K] Add x64/arm exports 2021-06-12 14:11:14 +02:00
win32kp.h [WIN32K:NTUSER] Assert global user lock is held exclusively when using global & desktop heaps 2021-08-03 23:13:19 +02:00