diff options
author | Michel Dänzer <michel.daenzer@amd.com> | 2012-06-06 12:29:37 +0200 |
---|---|---|
committer | Michel Dänzer <michel@daenzer.net> | 2012-06-06 12:29:37 +0200 |
commit | 77a056c1725c9c44a328ed324687bdf35144e9e2 (patch) | |
tree | bdff807f856094bb2db2f3347df256234df2ba6f | |
parent | 1d9f1eb7e65c57c52759ccbfa51e8bdd5a10acac (diff) |
Don't page-flip or wait on a CRTC while we're VT-switched away.
We don't know what the CRTC state is.
Signed-off-by: Michel Dänzer <michel.daenzer@amd.com>
-rw-r--r-- | src/radeon_dri2.c | 1 | ||||
-rw-r--r-- | src/radeon_video.c | 3 |
2 files changed, 4 insertions, 0 deletions
diff --git a/src/radeon_dri2.c b/src/radeon_dri2.c index 7a9b6256..43514b7b 100644 --- a/src/radeon_dri2.c +++ b/src/radeon_dri2.c @@ -744,6 +744,7 @@ can_flip(ScrnInfoPtr pScrn, DrawablePtr draw, { return draw->type == DRAWABLE_WINDOW && RADEONPTR(pScrn)->allowPageFlip && + pScrn->vtSema && DRI2CanFlip(draw) && can_exchange(pScrn, draw, front, back); } diff --git a/src/radeon_video.c b/src/radeon_video.c index d6027358..01703a0c 100644 --- a/src/radeon_video.c +++ b/src/radeon_video.c @@ -153,6 +153,9 @@ radeon_pick_best_crtc(ScrnInfoPtr pScrn, RROutputPtr primary_output = NULL; xf86CrtcPtr best_crtc = NULL, primary_crtc = NULL; + if (!pScrn->vtSema) + return NULL; + box.x1 = x1; box.x2 = x2; box.y1 = y1; |