From 751ccf53162db0daf1f0318e421da31e337041e7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Daniel=20Ekl=C3=B6f?= Date: Sun, 7 Mar 2021 15:44:23 +0100 Subject: [PATCH] sixel: add: increase data pointer instead of offset MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Same ‘add’ instruction to increase the offset, but simpler ‘mov’ instruction when writing the pixel data. --- sixel.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/sixel.c b/sixel.c index 10aa1f94..4f03143d 100644 --- a/sixel.c +++ b/sixel.c @@ -1004,13 +1004,13 @@ sixel_add(struct terminal *term, uint32_t color, uint8_t sixel) xassert(term->sixel.pos.row < term->sixel.image.height); size_t ofs = term->sixel.row_byte_ofs + term->sixel.pos.col; - uint32_t *data = term->sixel.image.data; + uint32_t *data = &term->sixel.image.data[ofs]; int max_non_empty_row = 0; - for (int i = 0; i < 6; i++, sixel >>= 1, ofs += width) { + for (int i = 0; i < 6; i++, sixel >>= 1, data += width) { if (sixel & 1) { - data[ofs] = color; max_non_empty_row = i; + *data = color; } }