From a4b7e20392e3bf7f1f94ab873f816ec7f004d2b3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristian=20H=C3=B8gsberg?= Date: Mon, 24 Oct 2011 13:26:32 -0400 Subject: [PATCH] drm: Only add an output once we've successfully initialized it --- compositor/compositor-drm.c | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/compositor/compositor-drm.c b/compositor/compositor-drm.c index 1a1b920e..f3fc194f 100644 --- a/compositor/compositor-drm.c +++ b/compositor/compositor-drm.c @@ -476,11 +476,6 @@ create_output_for_connector(struct drm_compositor *ec, drm_mode->base.flags = WL_OUTPUT_MODE_CURRENT | WL_OUTPUT_MODE_PREFERRED; - wlsc_output_init(&output->base, &ec->base, x, y, - connector->mmWidth, connector->mmHeight, 0); - - wl_list_insert(ec->base.output_list.prev, &output->base.link); - drmModeFreeEncoder(encoder); glGenRenderbuffers(2, output->rbo); @@ -529,6 +524,12 @@ create_output_for_connector(struct drm_compositor *ec, return -1; } + wlsc_output_init(&output->base, &ec->base, x, y, + connector->mmWidth, connector->mmHeight, 0); + + wl_list_insert(ec->base.output_list.prev, &output->base.link); + + output->pending_fs_surf_fb_id = 0; output->base.prepare_render = drm_output_prepare_render; output->base.present = drm_output_present; output->base.prepare_scanout_surface =