aboutsummaryrefslogtreecommitdiff
path: root/xorg-server/randr/rrcrtc.c
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2013-02-13 09:18:19 +0100
committermarha <marha@users.sourceforge.net>2013-02-13 09:18:19 +0100
commitad7d3734fae59b63a1afe2d8e11411ac32a40f30 (patch)
tree80af4bcc936f46b31ba17a71905f20deeca066f5 /xorg-server/randr/rrcrtc.c
parentc4583f59d8460f05ee211c2f8ed6208addfe3087 (diff)
parent8add148a4cf71b8bdab05a6b7e14824b5062da5e (diff)
downloadvcxsrv-ad7d3734fae59b63a1afe2d8e11411ac32a40f30.tar.gz
vcxsrv-ad7d3734fae59b63a1afe2d8e11411ac32a40f30.tar.bz2
vcxsrv-ad7d3734fae59b63a1afe2d8e11411ac32a40f30.zip
Merge remote-tracking branch 'origin/released'
* origin/released: mesa pixman xserver git update 13 Feb 2013
Diffstat (limited to 'xorg-server/randr/rrcrtc.c')
-rw-r--r--xorg-server/randr/rrcrtc.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/xorg-server/randr/rrcrtc.c b/xorg-server/randr/rrcrtc.c
index 859d19efe..063be0477 100644
--- a/xorg-server/randr/rrcrtc.c
+++ b/xorg-server/randr/rrcrtc.c
@@ -373,6 +373,11 @@ RRCrtcDetachScanoutPixmap(RRCrtcPtr crtc)
ret = pScrPriv->rrCrtcSetScanoutPixmap(crtc, NULL);
if (crtc->scanout_pixmap) {
master->StopPixmapTracking(mscreenpix, crtc->scanout_pixmap);
+ /*
+ * Unref the pixmap twice: once for the original reference, and once
+ * for the reference implicitly added by PixmapShareToSlave.
+ */
+ master->DestroyPixmap(crtc->scanout_pixmap->master_pixmap);
master->DestroyPixmap(crtc->scanout_pixmap->master_pixmap);
crtc->pScreen->DestroyPixmap(crtc->scanout_pixmap);
}