summaryrefslogtreecommitdiff
path: root/src/gallium/state_trackers/xorg/xorg_crtc.c
diff options
context:
space:
mode:
authorJakob Bornecrantz <jakob@vmware.com>2009-12-04 16:05:03 +0100
committerJakob Bornecrantz <jakob@vmware.com>2009-12-04 16:50:12 +0100
commitc33520b360780bce496b00516384e25a0908e43c (patch)
treebe6196299e68ee1da26f1d083bdf7998bea77471 /src/gallium/state_trackers/xorg/xorg_crtc.c
parentd5b94b49f602386b75630e73db775a68c72fdf46 (diff)
st/xorg: Fix leave enter vt cycle in crtc code
Diffstat (limited to 'src/gallium/state_trackers/xorg/xorg_crtc.c')
-rw-r--r--src/gallium/state_trackers/xorg/xorg_crtc.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/gallium/state_trackers/xorg/xorg_crtc.c b/src/gallium/state_trackers/xorg/xorg_crtc.c
index be9fcbc713..337449a745 100644
--- a/src/gallium/state_trackers/xorg/xorg_crtc.c
+++ b/src/gallium/state_trackers/xorg/xorg_crtc.c
@@ -307,8 +307,6 @@ xorg_crtc_cursor_destroy(xf86CrtcPtr crtc)
if (crtcp->cursor_bo)
kms_bo_destroy(&crtcp->cursor_bo);
#endif
-
- xfree(crtcp);
}
/*
@@ -320,11 +318,12 @@ crtc_destroy(xf86CrtcPtr crtc)
{
struct crtc_private *crtcp = crtc->driver_private;
- if (crtcp->cursor_tex)
- pipe_texture_reference(&crtcp->cursor_tex, NULL);
+ xorg_crtc_cursor_destroy(crtc);
drmModeFreeCrtc(crtcp->drm_crtc);
+
xfree(crtcp);
+ crtc->driver_private = NULL;
}
static const xf86CrtcFuncsRec crtc_funcs = {