From 65bec2452e5bd1b823ee810e2e48f3607b682e7d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Kristian=20H=C3=B8gsberg?= Date: Mon, 5 Mar 2012 19:57:35 -0500 Subject: [PATCH] drm: Disable sprites if they're broken Current sprite implementation has a color format bug. Disable sprites if they don't work and avoid spamming stderr and syslog. --- src/compositor-drm.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/compositor-drm.c b/src/compositor-drm.c index d2a5652b..9796014a 100644 --- a/src/compositor-drm.c +++ b/src/compositor-drm.c @@ -60,6 +60,7 @@ struct drm_compositor { struct tty *tty; struct wl_list sprite_list; + int sprites_are_broken; uint32_t prev_state; }; @@ -434,6 +435,9 @@ drm_output_prepare_overlay_surface(struct weston_output *output_base, pixman_box32_t *box; uint32_t format; + if (c->sprites_are_broken) + return -1; + if (surface_is_primary(ec, es)) return -1; @@ -484,6 +488,7 @@ drm_output_prepare_overlay_surface(struct weston_output *output_base, &fb_id, 0); if (ret) { fprintf(stderr, "addfb2 failed: %d\n", ret); + c->sprites_are_broken = 1; return -1; }