aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--backend/drm/drm.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/backend/drm/drm.c b/backend/drm/drm.c
index cd161e02..6541d31a 100644
--- a/backend/drm/drm.c
+++ b/backend/drm/drm.c
@@ -458,6 +458,14 @@ static bool drm_connector_test(struct wlr_output *output) {
}
if (drm_connector_state_active(conn, &output->pending)) {
+ if ((output->pending.committed &
+ (WLR_OUTPUT_STATE_ENABLED | WLR_OUTPUT_STATE_MODE)) &&
+ !(output->pending.committed & WLR_OUTPUT_STATE_BUFFER)) {
+ wlr_drm_conn_log(conn, WLR_DEBUG,
+ "Can't enable an output without a buffer");
+ return false;
+ }
+
if (!drm_connector_alloc_crtc(conn)) {
wlr_drm_conn_log(conn, WLR_DEBUG,
"No CRTC available for this connector");