summaryrefslogtreecommitdiff
path: root/source/fitz/list-device.c
diff options
context:
space:
mode:
authorRobin Watts <robin.watts@artifex.com>2016-10-24 13:13:53 +0100
committerRobin Watts <robin.watts@artifex.com>2016-10-24 13:23:50 +0100
commitafaf3dc8801e863fdfafdda35192973fa635cb0e (patch)
treec24a97fe32bfe86b8746ba96796798762ef0de49 /source/fitz/list-device.c
parent956b4f190c94b5ee1d1746bcd1d776cf392e00ac (diff)
downloadmupdf-afaf3dc8801e863fdfafdda35192973fa635cb0e.tar.xz
Fix cluster timeouts with test file.
tests_private/pdf/sumatra/1297_-_interpolate_at_lower_resolutions.pdf times out in the cluster. This is due to us having empty t3 glyphs defined that define d1 rectangles that are wildly different to the default font bbox. Add code to spot that t3 glyphs are empty, and to use a tiny font bbox for them. (It might be nicer to drop the empty display lists, but then this produces knock on problems further on, where non-existent display lists lead to NULL pixmaps, which lead to us think that renders failed etc).
Diffstat (limited to 'source/fitz/list-device.c')
-rw-r--r--source/fitz/list-device.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/source/fitz/list-device.c b/source/fitz/list-device.c
index c8b2ced5..ee722126 100644
--- a/source/fitz/list-device.c
+++ b/source/fitz/list-device.c
@@ -1380,6 +1380,11 @@ fz_bound_display_list(fz_context *ctx, fz_display_list *list, fz_rect *bounds)
return bounds;
}
+int fz_display_list_is_empty(fz_context *ctx, const fz_display_list *list)
+{
+ return !list || list->len == 0;
+}
+
void
fz_run_display_list(fz_context *ctx, fz_display_list *list, fz_device *dev, const fz_matrix *top_ctm, const fz_rect *scissor, fz_cookie *cookie)
{