[ros-diffs] [greatlrd] 33881: disable NtGdiPatBlt code, in some case it can cause random crash and have some graphic glichters it need be rewrite.

greatlrd at svn.reactos.org greatlrd at svn.reactos.org
Sat Jun 7 09:58:39 CEST 2008


Author: greatlrd
Date: Sat Jun  7 02:58:39 2008
New Revision: 33881

URL: http://svn.reactos.org/svn/reactos?rev=33881&view=rev
Log:
disable NtGdiPatBlt code, in some case it can cause random crash and have some graphic glichters it need be rewrite.

Modified:
    trunk/reactos/subsystems/win32/win32k/objects/bitblt.c

Modified: trunk/reactos/subsystems/win32/win32k/objects/bitblt.c
URL: http://svn.reactos.org/svn/reactos/trunk/reactos/subsystems/win32/win32k/objects/bitblt.c?rev=33881&r1=33880&r2=33881&view=diff
==============================================================================
--- trunk/reactos/subsystems/win32/win32k/objects/bitblt.c [iso-8859-1] (original)
+++ trunk/reactos/subsystems/win32/win32k/objects/bitblt.c [iso-8859-1] Sat Jun  7 02:58:39 2008
@@ -1069,18 +1069,24 @@
    INT Height,
    DWORD ROP)
 {
+    /* FIXME PatBlt code is wrong, we using NtGdiBitBlt to workaround this bug for now, like random crash, and so on */
+#if 0
    PGDIBRUSHOBJ BrushObj;
    DC *dc;
    PDC_ATTR Dc_Attr;
+   BOOL ret;
+#endif
+
    BOOL UsesSource = ROP3_USES_SOURCE(ROP);
-   BOOL ret;
-
    if (UsesSource)
    {
        /* in this case we call on GdiMaskBlt */
        return NtGdiMaskBlt(hDC, XLeft, YLeft, Width, Height, 0,0,0,0,0,0,ROP,0);
    }
 
+   return NtGdiBitBlt( hDC, XLeft, YLeft, Width, Height,  0, 0, 0, ROP, 0, 0);
+    
+#if 0
    dc = DC_LockDc(hDC);
    if (dc == NULL)
    {
@@ -1117,6 +1123,7 @@
    DC_UnlockDc(dc);
 
    return ret;
+#endif
 }
 
 BOOL STDCALL



More information about the Ros-diffs mailing list