summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuc Verhaegen <libv@skynet.be>2009-11-11 15:59:27 +0100
committerKeith Packard <keithp@keithp.com>2009-12-02 08:41:03 -0800
commit0e084d8c71e697a5cf5d5d7c749455ae14bd6eb7 (patch)
tree0bee3ba1a6e8bd5e4118befe2e726f4f9980a308
parentf4fc3406720410e37a2bce1b782cba0f0b734e42 (diff)
Xv: Fix AdjustFrame when driver implements ReputImage.
Should probably also be applied to stabler xserver branches too. Luc Verhaegen. From a22bc20721bad506d8fa9772b1258568cbffe7d2 Mon Sep 17 00:00:00 2001 From: Luc Verhaegen <libv@skynet.be> Date: Wed, 11 Nov 2009 15:52:39 +0100 Subject: [PATCH] Xv: Fix AdjustFrame when driver implements ReputImage. Finally fixes fd.o #4653, filed more than 4 years ago. Patch can be happily applied to all modular Xorg versions. Signed-off-by: Luc Verhaegen <libv@skynet.be> Reviewed-by: Keith Packard <keithp@keithp.com> Signed-off-by: Keith Packard <keithp@keithp.com>
-rw-r--r--hw/xfree86/common/xf86xv.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/hw/xfree86/common/xf86xv.c b/hw/xfree86/common/xf86xv.c
index abbe03397..82216598b 100644
--- a/hw/xfree86/common/xf86xv.c
+++ b/hw/xfree86/common/xf86xv.c
@@ -1297,7 +1297,7 @@ xf86XVAdjustFrame(int index, int x, int y, int flags)
for(i = pa->nPorts; i > 0; i--, pPort++) {
pPriv = (XvPortRecPrivatePtr)pPort->devPriv.ptr;
- if(!pPriv->type && (pPriv->isOn == XV_ON)) { /* overlaid still/image */
+ if(!pPriv->type && (pPriv->isOn != XV_OFF)) { /* overlaid still/image */
if(pPriv->pCompositeClip && pPriv->FreeCompositeClip)
REGION_DESTROY(pScreen, pPriv->pCompositeClip);
@@ -1311,7 +1311,7 @@ xf86XVAdjustFrame(int index, int x, int y, int flags)
(pWin->visibility == VisibilityPartiallyObscured)))
{
xf86XVReputImage(pPriv);
- } else {
+ } else if (pPriv->isOn == XV_ON) {
(*pPriv->AdaptorRec->StopVideo)(
pPriv->pScrn, pPriv->DevPriv.ptr, FALSE);
xf86XVRemovePortFromWindow(pWin, pPriv);