diff --git a/graphics/bitblt.c b/graphics/bitblt.c
index c7c0f87197ddf09e53bcd7b8a283f2fc790baaf3..05372ae7e4de64c8a5b4fa0fcfa91d9872f88919 100644
--- a/graphics/bitblt.c
+++ b/graphics/bitblt.c
@@ -26,7 +26,7 @@ BOOL16 WINAPI PatBlt16( HDC16 hdc, INT16 left, INT16 top,
 BOOL WINAPI PatBlt( HDC hdc, INT left, INT top,
                         INT width, INT height, DWORD rop)
 {
-    DC * dc = DC_GetDCPtr( hdc );
+    DC * dc = DC_GetDCUpdate( hdc );
     BOOL bRet = FALSE;
 
     if (!dc) return FALSE;
diff --git a/graphics/x11drv/bitblt.c b/graphics/x11drv/bitblt.c
index 50bc3dc6f55aba01813201eaebee804bcf0563b8..c0e44e05a9e971d3cd4095393e53e0283491c255 100644
--- a/graphics/x11drv/bitblt.c
+++ b/graphics/x11drv/bitblt.c
@@ -1471,8 +1471,6 @@ BOOL X11DRV_PatBlt( DC *dc, INT left, INT top,
     params.heightSrc = 0;
     params.rop = rop;
 
-    if (dc->w.flags & DC_DIRTY) CLIPPING_UpdateGCRegion( dc );
-
     X11DRV_DIB_UpdateDIBSection( dc, FALSE );
     EnterCriticalSection( &X11DRV_CritSection );
     result = (BOOL)CALL_LARGE_STACK( BITBLT_DoStretchBlt, &params );
@@ -1507,9 +1505,6 @@ BOOL X11DRV_BitBlt( DC *dcDst, INT xDst, INT yDst,
     X11DRV_DIB_UpdateDIBSection( dcDst, FALSE );
     X11DRV_DIB_UpdateDIBSection( dcSrc, FALSE );
 
-    if (dcDst->w.flags & DC_DIRTY) CLIPPING_UpdateGCRegion( dcDst );
-    if (dcSrc && (dcSrc->w.flags & DC_DIRTY)) CLIPPING_UpdateGCRegion( dcSrc );
-
     EnterCriticalSection( &X11DRV_CritSection );
     result = (BOOL)CALL_LARGE_STACK( BITBLT_DoStretchBlt, &params );
     LeaveCriticalSection( &X11DRV_CritSection );
@@ -1544,9 +1539,6 @@ BOOL X11DRV_StretchBlt( DC *dcDst, INT xDst, INT yDst,
     X11DRV_DIB_UpdateDIBSection( dcDst, FALSE );
     X11DRV_DIB_UpdateDIBSection( dcSrc, FALSE );
 
-    if (dcDst->w.flags & DC_DIRTY) CLIPPING_UpdateGCRegion( dcDst );
-    if (dcSrc && (dcSrc->w.flags & DC_DIRTY)) CLIPPING_UpdateGCRegion( dcSrc );
-
     EnterCriticalSection( &X11DRV_CritSection );
     result = (BOOL)CALL_LARGE_STACK( BITBLT_DoStretchBlt, &params );
     LeaveCriticalSection( &X11DRV_CritSection );