From 2fe2ffe8135f0dc76644d650a399bd877b3ee7f7 Mon Sep 17 00:00:00 2001 From: cinap_lenrek Date: Sun, 16 Aug 2015 18:20:22 +0200 Subject: gs: fix alignment bug in image_render_interpolate() --- sys/src/cmd/gs/src/gxiscale.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'sys/src') diff --git a/sys/src/cmd/gs/src/gxiscale.c b/sys/src/cmd/gs/src/gxiscale.c index bd8d1eacb..ecf81abac 100644 --- a/sys/src/cmd/gs/src/gxiscale.c +++ b/sys/src/cmd/gs/src/gxiscale.c @@ -182,6 +182,7 @@ image_render_interpolate(gx_image_enum * penum, const byte * buffer, stream_cursor_write w; byte *out = penum->line; + if (h != 0) { /* Convert the unpacked data to concrete values in */ /* the source buffer. */ @@ -203,7 +204,7 @@ image_render_interpolate(gx_image_enum * penum, const byte * buffer, for (i = 0; i < pss->params.WidthIn; p -= c, q += c, ++i) memcpy(q, p, c); r.ptr = out - 1; - out = q; + out += round_up(pss->params.WidthIn * c, align_bitmap_mod); } } else { /* Messy case: concretize each sample. */ -- cgit v1.2.3