diff options
author | Robin Watts <robin.watts@artifex.com> | 2016-05-25 21:50:17 +0100 |
---|---|---|
committer | Robin Watts <robin.watts@artifex.com> | 2016-05-26 10:36:35 +0100 |
commit | dff58514f30b10850bab0205580af98ec3217d64 (patch) | |
tree | 02766bf6e5928057292d0789e61fe2e135ab8a5d /source | |
parent | b2772f404fa78554006a016eaca908f7bd4733da (diff) | |
download | mupdf-dff58514f30b10850bab0205580af98ec3217d64.tar.xz |
Ensure fz_invert_pixmap can cope with no alpha.
Diffstat (limited to 'source')
-rw-r--r-- | source/fitz/pixmap.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/source/fitz/pixmap.c b/source/fitz/pixmap.c index a8c7da4c..1d985fa9 100644 --- a/source/fitz/pixmap.c +++ b/source/fitz/pixmap.c @@ -781,16 +781,18 @@ fz_invert_pixmap(fz_context *ctx, fz_pixmap *pix) { unsigned char *s = pix->samples; int k, x, y; + int n1 = pix->n - pix->alpha; + int n = pix->n; for (y = 0; y < pix->h; y++) { for (x = 0; x < pix->w; x++) { - for (k = 0; k < pix->n - 1; k++) + for (k = 0; k < n1; k++) s[k] = 255 - s[k]; - s += pix->n; + s += n; } - s += pix->stride - pix->w * pix->n; + s += pix->stride - pix->w * n; } } |