diff --git a/present/present_wnmd.c b/present/present_wnmd.c index 4ee2585c2..5420d54e8 100644 --- a/present/present_wnmd.c +++ b/present/present_wnmd.c @@ -326,6 +326,10 @@ present_wnmd_check_flip(RRCrtcPtr crtc, if ( !RegionEqual(&window->winSize, &toplvl_window->winSize) ) return FALSE; + /* Can't flip if window clipped by children */ + if (!RegionEqual(&window->clipList, &window->winSize)) + return FALSE; + /* Ask the driver for permission */ if (screen_priv->wnmd_info->check_flip2) { if (!(*screen_priv->wnmd_info->check_flip2) (crtc, window, pixmap, sync_flip, reason)) {