summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAidan MacDonald <amachronic@protonmail.com>2023-01-08 10:44:47 +0000
committerAidan MacDonald <amachronic@protonmail.com>2023-01-08 10:50:39 +0000
commit593103cd8bdae024e28932c94ce5441283161393 (patch)
treee250e86f717d8c8c7771b25c3320a15ed90cf622
parent528b6a9a15041999ab205af2ce9674b0277334f7 (diff)
downloadrockbox-593103cd8b.tar.gz
rockbox-593103cd8b.zip
lcd: Fix 4bpp optimized 16-bit alpha blit
Fixes a bug introduced by commit 5d0c382a59 that caused graphical corruption on anti-aliased fonts. Change-Id: I6052ca758382bd9a1154d2e2208dee633dd17715
-rw-r--r--firmware/drivers/lcd-16bit-common.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/firmware/drivers/lcd-16bit-common.c b/firmware/drivers/lcd-16bit-common.c
index af1171b401..9d24dfe16e 100644
--- a/firmware/drivers/lcd-16bit-common.c
+++ b/firmware/drivers/lcd-16bit-common.c
@@ -498,10 +498,11 @@ static void ICODE_ATTR lcd_alpha_bitmap_part_mix(
if (stride_alpha) { \
alpha_pixels = stride_alpha - alpha_pixels; \
alpha += alpha_pixels / ALPHA_PIXELS_PER_BYTE; \
- alpha_data = *alpha++ ^ dmask; \
alpha_pixels &= 1; \
- if (alpha_pixels) \
+ if (alpha_pixels) { \
+ alpha_data = *alpha++ ^ dmask; \
alpha_data >>= ALPHA_BPP; \
+ } \
} \
} while(0)
#define READ_ALPHA() \