backend/drm: do not try a pageflip is another one is in pending

This commit is contained in:
emersion 2018-01-19 23:46:40 +01:00
parent f0f97280a0
commit 584f06ad2f
No known key found for this signature in database
GPG key ID: 0FDE7BE0E88F5E48

View file

@ -201,6 +201,11 @@ static void wlr_drm_connector_swap_buffers(struct wlr_output *output) {
} }
uint32_t fb_id = get_fb_for_bo(bo); 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)) { if (drm->iface->crtc_pageflip(drm, conn, crtc, fb_id, NULL)) {
conn->pageflip_pending = true; conn->pageflip_pending = true;
} else { } else {