sixel: add: increase data pointer instead of offset

Same ‘add’ instruction to increase the offset, but simpler ‘mov’
instruction when writing the pixel data.
This commit is contained in:
Daniel Eklöf 2021-03-07 15:44:23 +01:00
parent 777576b66b
commit 751ccf5316
No known key found for this signature in database
GPG key ID: 5BBD4992C116573F

View file

@ -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;
}
}