diff options
author | Luc Verhaegen <libv@skynet.be> | 2009-11-11 15:59:27 +0100 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2009-12-02 08:41:03 -0800 |
commit | 0e084d8c71e697a5cf5d5d7c749455ae14bd6eb7 (patch) | |
tree | 0bee3ba1a6e8bd5e4118befe2e726f4f9980a308 | |
parent | f4fc3406720410e37a2bce1b782cba0f0b734e42 (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.c | 4 |
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); |