diff options
author | Ben Skeggs <bskeggs@redhat.com> | 2010-11-30 15:27:36 +1000 |
---|---|---|
committer | Ben Skeggs <bskeggs@redhat.com> | 2010-11-30 15:27:36 +1000 |
commit | 8bb8231236a6b877895663aeaa9cef731d67fe68 (patch) | |
tree | b2dc77b8129be2bf4542a57b0d8cb952d532b052 | |
parent | f29afe65b67c9b89ceba421d9b3aee590f7ded20 (diff) |
dri2: fix certain clients blocking forever when sync-to-vblank unavailable
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
-rw-r--r-- | src/nouveau_dri2.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/nouveau_dri2.c b/src/nouveau_dri2.c index 969c6f3..2dd6da4 100644 --- a/src/nouveau_dri2.c +++ b/src/nouveau_dri2.c @@ -322,8 +322,10 @@ nouveau_dri2_schedule_wait(ClientPtr client, DrawablePtr draw, CARD64 current_msc; int ret; - if (!can_sync_to_vblank(draw)) + if (!can_sync_to_vblank(draw)) { + DRI2WaitMSCComplete(client, draw, target_msc, 0, 0); return TRUE; + } /* Initialize a vblank structure */ s = malloc(sizeof(*s)); |