Author: greatlrd Date: Thu Aug 23 19:03:13 2007 New Revision: 28473
URL: http://svn.reactos.org/svn/reactos?rev=28473&view=rev Log: Remove redirect of CreateDIBitmap@24 to NtGdiCreateDIBitmap@24, and create stub for it. we need do some stuff in user mode Fix : CreateDiscardableBitmap shall be call on CreateCompatibleBitmap not the NtGdiCreateCompatibleBitmap, for we need do some thing in user mode Fix : CreateEllipticRgnIndirect it crash now, if the param is NULL, that goes same for all windows NT I tested
Modified: trunk/reactos/dll/win32/gdi32/gdi32.def trunk/reactos/dll/win32/gdi32/misc/stubs.c trunk/reactos/dll/win32/gdi32/objects/bitmap.c trunk/reactos/dll/win32/gdi32/objects/region.c
Modified: trunk/reactos/dll/win32/gdi32/gdi32.def URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/gdi32.def?r... ============================================================================== --- trunk/reactos/dll/win32/gdi32/gdi32.def (original) +++ trunk/reactos/dll/win32/gdi32/gdi32.def Thu Aug 23 19:03:13 2007 @@ -56,14 +56,7 @@ CreateDIBPatternBrush@8 CreateDIBPatternBrushPt@8 CreateDIBSection@24 - -ClearBitmapAttributes@8 -ClearBrushAttributes@8 -CopyMetaFileA@8 -CopyMetaFileW@8 -CreateBrushIndirect@4 -CreateDIBSection@24 -CreateDIBitmap@24=NtGdiCreateDIBitmap@24 +CreateDIBitmap@24 CreateDiscardableBitmap@12 CreateEllipticRgn@16=NtGdiCreateEllipticRgn@16 CreateEllipticRgnIndirect@4 @@ -73,6 +66,13 @@ CreateFontIndirectA@4 CreateFontIndirectExA@4 CreateFontIndirectExW@4 + +ClearBitmapAttributes@8 +ClearBrushAttributes@8 +CopyMetaFileA@8 +CopyMetaFileW@8 +CreateBrushIndirect@4 +CreateDIBSection@24 CreateFontIndirectW@4 CreateFontW@56 CreateHalftonePalette@4=NtGdiCreateHalftonePalette@4
Modified: trunk/reactos/dll/win32/gdi32/misc/stubs.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/misc/stubs.... ============================================================================== --- trunk/reactos/dll/win32/gdi32/misc/stubs.c (original) +++ trunk/reactos/dll/win32/gdi32/misc/stubs.c Thu Aug 23 19:03:13 2007 @@ -2432,6 +2432,18 @@ return 0; }
+ +HBITMAP +STDCALL +CreateDIBitmap(HDC + hDc, const BITMAPINFOHEADER *Header, + DWORD Init, LPCVOID Bits, const BITMAPINFO *Data, + UINT ColorUse) +{ + /* FIMXE we need do more thing in user mode */ + return NtGdiCreateDIBitmap(hDc, Header, Init, Bits, Data, ColorUse); +} + /* * @unimplemented */
Modified: trunk/reactos/dll/win32/gdi32/objects/bitmap.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/objects/bit... ============================================================================== --- trunk/reactos/dll/win32/gdi32/objects/bitmap.c (original) +++ trunk/reactos/dll/win32/gdi32/objects/bitmap.c Thu Aug 23 19:03:13 2007 @@ -135,7 +135,7 @@ INT Width, INT Height) { - return NtGdiCreateCompatibleBitmap(hDC, Width, Height); + return CreateCompatibleBitmap(hDC, Width, Height); }
Modified: trunk/reactos/dll/win32/gdi32/objects/region.c URL: http://svn.reactos.org/svn/reactos/trunk/reactos/dll/win32/gdi32/objects/reg... ============================================================================== --- trunk/reactos/dll/win32/gdi32/objects/region.c (original) +++ trunk/reactos/dll/win32/gdi32/objects/region.c Thu Aug 23 19:03:13 2007 @@ -56,11 +56,9 @@ const RECT *prc ) { - if (prc) - { - return NtGdiCreateEllipticRgn(prc->left, prc->top, prc->right, prc->bottom); - } - return NULL; + /* Notes if prc is NULL it will crash on All Windows NT I checked 2000/XP/VISTA */ + return NtGdiCreateEllipticRgn(prc->left, prc->top, prc->right, prc->bottom); + }
HRGN