1 diff --git a/exa/exa_render.c b/exa/exa_render.c
2 index 172e2b5..0463b3f 100644
5 @@ -878,8 +878,9 @@ exaComposite(CARD8 op,
6 Bool saveMaskRepeat = pMask ? pMask->repeat : 0;
9 - if (pExaScr->swappedOut)
11 + if (pExaScr->swappedOut || pSrc->pDrawable == NULL ||
12 + (pMask != NULL && pMask->pDrawable == NULL))
15 /* Remove repeat in source if useless */
16 if (pSrc->pDrawable && pSrc->repeat && !pSrc->transform && xSrc >= 0 &&