diff options
author | Robin Watts <robin.watts@artifex.com> | 2017-02-17 19:49:26 +0000 |
---|---|---|
committer | Robin Watts <robin.watts@artifex.com> | 2017-02-17 19:52:34 +0000 |
commit | fd6882236e53c30403edf42ee643d0db2138644d (patch) | |
tree | 94db70dee587ef88ec4ec0521d89b4f8eb8f1e1e | |
parent | ea7b7422894ac4f40f7d1fe6e6bf53b70512dd2e (diff) | |
download | mupdf-fd6882236e53c30403edf42ee643d0db2138644d.tar.xz |
Bug 697592: Fix double application of transform.
When falling back from glyph cache based rendering to direct
rendering, we were applying the transform twice due to the
handling of dev->transform introduced in commit
ccaf716.
Fixed here.
-rw-r--r-- | source/fitz/draw-device.c | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/source/fitz/draw-device.c b/source/fitz/draw-device.c index 60da73ac..d2b2d380 100644 --- a/source/fitz/draw-device.c +++ b/source/fitz/draw-device.c @@ -712,7 +712,7 @@ fz_draw_fill_text(fz_context *ctx, fz_device *devp, const fz_text *text, const f fz_path *path = fz_outline_glyph(ctx, span->font, gid, &tm); if (path) { - fz_draw_fill_path(ctx, devp, path, 0, &ctm, colorspace, color, alpha); + fz_draw_fill_path(ctx, devp, path, 0, in_ctm, colorspace, color, alpha); fz_drop_path(ctx, path); } else @@ -791,7 +791,7 @@ fz_draw_stroke_text(fz_context *ctx, fz_device *devp, const fz_text *text, const fz_path *path = fz_outline_glyph(ctx, span->font, gid, &tm); if (path) { - fz_draw_stroke_path(ctx, devp, path, stroke, &ctm, colorspace, color, alpha); + fz_draw_stroke_path(ctx, devp, path, stroke, in_ctm, colorspace, color, alpha); fz_drop_path(ctx, path); } else @@ -905,7 +905,7 @@ fz_draw_clip_text(fz_context *ctx, fz_device *devp, const fz_text *text, const f state[1].mask = NULL; fz_try(ctx) { - fz_draw_fill_path(ctx, devp, path, 0, &ctm, fz_device_gray(ctx), &white, 1); + fz_draw_fill_path(ctx, devp, path, 0, in_ctm, fz_device_gray(ctx), &white, 1); } fz_always(ctx) { @@ -1028,7 +1028,7 @@ fz_draw_clip_stroke_text(fz_context *ctx, fz_device *devp, const fz_text *text, state[0].mask = NULL; fz_try(ctx) { - fz_draw_stroke_path(ctx, devp, path, stroke, &ctm, fz_device_gray(ctx), &white, 1); + fz_draw_stroke_path(ctx, devp, path, stroke, in_ctm, fz_device_gray(ctx), &white, 1); } fz_always(ctx) { |