From 081a916355317aaf2fa54e7490a9c61e14bfef60 Mon Sep 17 00:00:00 2001 From: Benign X <1341398182@qq.com> Date: Wed, 18 Mar 2026 22:52:20 +0800 Subject: [PATCH] chore(gdb): correct ARGB8888 channel order from BGRA to RGBA (#9873) --- scripts/gdb/lvglgdb/lvgl/draw/lv_draw_buf.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/scripts/gdb/lvglgdb/lvgl/draw/lv_draw_buf.py b/scripts/gdb/lvglgdb/lvgl/draw/lv_draw_buf.py index 8037702f72..db3e0602b7 100644 --- a/scripts/gdb/lvglgdb/lvgl/draw/lv_draw_buf.py +++ b/scripts/gdb/lvglgdb/lvgl/draw/lv_draw_buf.py @@ -189,8 +189,9 @@ class LVDrawBuf(Value): return Image.fromarray(rgb_arr, "RGB") elif color_format == self._color_formats["ARGB8888"]: + # lv_color32_t memory layout: [blue, green, red, alpha] arr = np.frombuffer(pixel_data, dtype=np.uint8).reshape(-1, 4) - rgba = np.column_stack((arr[:, 1:4], arr[:, 0])) # ARGB -> RGBA + rgba = arr[:, [2, 1, 0, 3]] # BGRA -> RGBA return Image.frombytes("RGBA", (width, height), rgba.tobytes()) elif color_format == self._color_formats["XRGB8888"]: