diff --git a/mi/mibitblt.c b/mi/mibitblt.c index 0954b2545..0b13e49e4 100644 --- a/mi/mibitblt.c +++ b/mi/mibitblt.c @@ -96,9 +96,9 @@ miCopyArea(DrawablePtr pSrcDrawable, srcx = xIn + pSrcDrawable->x; srcy = yIn + pSrcDrawable->y; - /* If the destination is clipped away, this is easy */ + /* If the destination isn't realized, this is easy */ if (pDstDrawable->type == DRAWABLE_WINDOW && - RegionNil(pGC->pCompositeClip)) + !((WindowPtr) pDstDrawable)->realized) return NULL; /* clip the source */ diff --git a/mi/micopy.c b/mi/micopy.c index dd40ec0e3..40096f24c 100644 --- a/mi/micopy.c +++ b/mi/micopy.c @@ -152,9 +152,10 @@ miDoCopy(DrawablePtr pSrcDrawable, Bool fastDst = FALSE; /* for fast clipping with one rect dest */ Bool fastExpose = FALSE; /* for fast exposures with pixmap source */ - /* Short cut for unmapped or fully clipped windows */ + /* Short cut for unmapped windows */ + if (pDstDrawable->type == DRAWABLE_WINDOW && - RegionNil(pGC->pCompositeClip)) { + !((WindowPtr) pDstDrawable)->realized) { return NULL; }