summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2012-12-15 09:28:04 +0000
committerChris Wilson <chris@chris-wilson.co.uk>2012-12-15 09:28:04 +0000
commitb0f8c823b6cafdfdd064c09d58174f946e290541 (patch)
treec2d970706a8d8b364270c89a6e03a2a61081adb4
parent2c71a8e08abce74b269687d3a6c1edd7f9d643d3 (diff)
downloadxf86-video-intel-b0f8c823b6cafdfdd064c09d58174f946e290541.tar.gz
xf86-video-intel-b0f8c823b6cafdfdd064c09d58174f946e290541.tar.bz2
xf86-video-intel-b0f8c823b6cafdfdd064c09d58174f946e290541.zip
sna/dri: Fallback to a blit after a failed flip
...rather than force the exchange. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
-rw-r--r--src/sna/sna_dri.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/src/sna/sna_dri.c b/src/sna/sna_dri.c
index 522549ac1..fc84e94be 100644
--- a/src/sna/sna_dri.c
+++ b/src/sna/sna_dri.c
@@ -1798,15 +1798,8 @@ sna_dri_schedule_flip(ClientPtr client, DrawablePtr draw, DRI2BufferPtr front,
sna_dri_page_flip(sna, info);
if (info->count == 0) {
- info->back->name = info->old_front.name;
- get_private(info->back)->bo = info->old_front.bo;
- info->old_front.bo = NULL;
-
- DRI2SwapComplete(info->client, draw, 0, 0, 0,
- DRI2_EXCHANGE_COMPLETE,
- info->event_complete,
- info->event_data);
sna_dri_frame_event_info_free(sna, draw, info);
+ return false;
} else if (info->type != DRI2_FLIP) {
get_private(info->back)->bo =
kgem_create_2d(&sna->kgem,