From d50385e8d5c99e2feeb6169f8e16b079acf23002 Mon Sep 17 00:00:00 2001 From: Stefan Haun <tux@netz39.de> Date: Sun, 6 Oct 2019 13:45:21 +0200 Subject: [PATCH] Check for BPP in display.c:compositor() --- epicardium/modules/display.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/epicardium/modules/display.c b/epicardium/modules/display.c index 8d309169..f8c34ea7 100644 --- a/epicardium/modules/display.c +++ b/epicardium/modules/display.c @@ -3,6 +3,7 @@ #include "FreeRTOS.h" #include "LCD_Driver.h" #include "epicardium.h" +#include "framebuffer.h" #include "gfx.h" #include "gpio.h" #include "task.h" @@ -181,6 +182,15 @@ int epic_disp_circ( void compositor() { + /* Check that BPP is 2 for everything */ + const size_t bpp_app = fb_bytes_per_pixel(application_screen.fb); + const size_t bpp_ovl = fb_bytes_per_pixel(overlay_screen.fb); + const size_t bpp_disp = fb_bytes_per_pixel(overlay_screen.fb); + + if ((bpp_app != 2) || (bpp_ovl != 2) || (bpp_disp != 2)) + return; + + /* Compose overlay on application */ for (int y = 0; y < display_screen.height; y++) { for (int x = 0; x < display_screen.width; x++) { uint8_t *overlay_pixel = -- GitLab