From: Thomas Hellstrom Date: Fri, 26 Nov 2010 09:06:47 +0000 (+0100) Subject: xorg/vmwgfx: Flush even if we don't autopaint the color key X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=28ee7561f9e9bac8a76d5f96fe55b890a61a7d04;p=mesa.git xorg/vmwgfx: Flush even if we don't autopaint the color key This may help paint the colorkey before overlay updates in some situations where the app paints the color key (mainly xine). Signed-off-by: Thomas Hellstrom --- diff --git a/src/gallium/targets/xorg-vmwgfx/vmw_video.c b/src/gallium/targets/xorg-vmwgfx/vmw_video.c index 719646afaee..3d907575ece 100644 --- a/src/gallium/targets/xorg-vmwgfx/vmw_video.c +++ b/src/gallium/targets/xorg-vmwgfx/vmw_video.c @@ -556,10 +556,10 @@ vmw_video_port_init(ScrnInfoPtr pScrn, struct vmw_video_port *port, REGION_COPY(pScrn->pScreen, &port->clipBoxes, clipBoxes); - if (port->isAutoPaintColorkey) { + if (port->isAutoPaintColorkey) xf86XVFillKeyHelper(pScrn->pScreen, port->colorKey, clipBoxes); - xorg_flush(pScrn->pScreen); - } + + xorg_flush(pScrn->pScreen); return port->play(pScrn, port, src_x, src_y, drw_x, drw_y, src_w, src_h, drw_w, drw_h, format, buf, width, height, clipBoxes); @@ -646,12 +646,12 @@ vmw_video_port_play(ScrnInfoPtr pScrn, struct vmw_video_port *port, */ if (!REGION_EQUAL(pScrn->pScreen, &port->clipBoxes, clipBoxes)) { REGION_COPY(pScrn->pScreen, &port->clipBoxes, clipBoxes); - if (port->isAutoPaintColorkey) { + if (port->isAutoPaintColorkey) xf86XVFillKeyHelper(pScrn->pScreen, port->colorKey, clipBoxes); - xorg_flush(pScrn->pScreen); - } } + xorg_flush(pScrn->pScreen); + ret = drmCommandWrite(vmw->fd, DRM_VMW_CONTROL_STREAM, &arg, sizeof(arg)); if (ret) { vmw_video_port_cleanup(pScrn, port);