diff --git a/src/draw/sw/blend/lv_draw_sw_blend_to_rgb565.c b/src/draw/sw/blend/lv_draw_sw_blend_to_rgb565.c index b6db336eb..84c19398d 100644 --- a/src/draw/sw/blend/lv_draw_sw_blend_to_rgb565.c +++ b/src/draw/sw/blend/lv_draw_sw_blend_to_rgb565.c @@ -505,7 +505,7 @@ static void LV_ATTRIBUTE_FAST_MEM rgb888_image_blend(_lv_draw_sw_blend_image_dsc case LV_BLEND_MODE_MULTIPLY: res = ((dest_buf_c16[dest_x].red * (src_buf_u8[src_x + 2] >> 3)) >> 5) << 11; res += ((dest_buf_c16[dest_x].green * (src_buf_u8[src_x + 1] >> 2)) >> 6) << 5; - res += (dest_buf_c16[dest_x].blue * (src_buf_u8[src_x + 1] >> 3)) >> 5; + res += (dest_buf_c16[dest_x].blue * (src_buf_u8[src_x + 0] >> 3)) >> 5; break; default: LV_LOG_WARN("Not supported blend mode: %d", dsc->blend_mode); diff --git a/tests/ref_imgs/draw/render/rgb565/demo_render_blend_mode_opa_128.png b/tests/ref_imgs/draw/render/rgb565/demo_render_blend_mode_opa_128.png index 165607889..2414c4920 100644 Binary files a/tests/ref_imgs/draw/render/rgb565/demo_render_blend_mode_opa_128.png and b/tests/ref_imgs/draw/render/rgb565/demo_render_blend_mode_opa_128.png differ diff --git a/tests/ref_imgs/draw/render/rgb565/demo_render_blend_mode_opa_255.png b/tests/ref_imgs/draw/render/rgb565/demo_render_blend_mode_opa_255.png index 014adff7f..72d14e8bc 100644 Binary files a/tests/ref_imgs/draw/render/rgb565/demo_render_blend_mode_opa_255.png and b/tests/ref_imgs/draw/render/rgb565/demo_render_blend_mode_opa_255.png differ