diff options
author | emersion <contact@emersion.fr> | 2018-01-19 23:46:40 +0100 |
---|---|---|
committer | emersion <contact@emersion.fr> | 2018-01-19 23:46:40 +0100 |
commit | 584f06ad2fb45cfc57fc1a0cdd59deec0c2d18c1 (patch) | |
tree | c6c24de445856d3cdf3d3499c8b6f04a5817f778 /backend | |
parent | f0f97280a0364f58c1b5fc3f95818c6969058010 (diff) |
backend/drm: do not try a pageflip is another one is in pending
Diffstat (limited to 'backend')
-rw-r--r-- | backend/drm/drm.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/backend/drm/drm.c b/backend/drm/drm.c index 267cafc3..e6bfee8c 100644 --- a/backend/drm/drm.c +++ b/backend/drm/drm.c @@ -201,6 +201,11 @@ static void wlr_drm_connector_swap_buffers(struct wlr_output *output) { } uint32_t fb_id = get_fb_for_bo(bo); + if (conn->pageflip_pending) { + wlr_log(L_ERROR, "Skipping pageflip"); + return; + } + if (drm->iface->crtc_pageflip(drm, conn, crtc, fb_id, NULL)) { conn->pageflip_pending = true; } else { |