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.
diff --git a/src/compositor-drm.c b/src/compositor-drm.c
index d2a5652..9796014 100644
--- a/src/compositor-drm.c
+++ b/src/compositor-drm.c
@@ -60,6 +60,7 @@
struct tty *tty;
struct wl_list sprite_list;
+ int sprites_are_broken;
uint32_t prev_state;
};
@@ -434,6 +435,9 @@
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 @@
&fb_id, 0);
if (ret) {
fprintf(stderr, "addfb2 failed: %d\n", ret);
+ c->sprites_are_broken = 1;
return -1;
}