diff --git a/backend/drm/drm.c b/backend/drm/drm.c index 54b225a0..1218fa9d 100644 --- a/backend/drm/drm.c +++ b/backend/drm/drm.c @@ -466,8 +466,7 @@ static bool drm_connector_test(struct wlr_output *output) { } } - if ((output->pending.committed & WLR_OUTPUT_STATE_BUFFER) && - output->pending.buffer_type == WLR_OUTPUT_STATE_BUFFER_SCANOUT) { + if ((output->pending.committed & WLR_OUTPUT_STATE_BUFFER) && !conn->backend->parent) { if (!drm_connector_set_pending_fb(conn, &output->pending)) { return false; } diff --git a/backend/drm/legacy.c b/backend/drm/legacy.c index 4750c1ce..daeeb8dd 100644 --- a/backend/drm/legacy.c +++ b/backend/drm/legacy.c @@ -36,7 +36,6 @@ static bool legacy_crtc_test(struct wlr_drm_connector *conn, struct wlr_drm_crtc *crtc = conn->crtc; if ((state->committed & WLR_OUTPUT_STATE_BUFFER) && - state->buffer_type == WLR_OUTPUT_STATE_BUFFER_SCANOUT && !drm_connector_state_is_modeset(state)) { struct wlr_drm_fb *pending_fb = crtc->primary->pending_fb;