summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTor Andersson <tor.andersson@artifex.com>2011-04-04 03:14:01 +0200
committerTor Andersson <tor.andersson@artifex.com>2011-04-04 03:14:01 +0200
commite77893b29cf53a9d6933cab0f9ae9e78b30a6592 (patch)
tree15c408285944a065b3bb9a69f09506caf3b71fcf
parent2522bc48349b23f5a22df7831171e73633f332f4 (diff)
downloadmupdf-e77893b29cf53a9d6933cab0f9ae9e78b30a6592.tar.xz
draw: Fix bug in display list culling.
The node bbox was not transformed to device space before the visibility test.
-rw-r--r--fitz/dev_list.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/fitz/dev_list.c b/fitz/dev_list.c
index d90f64c2..bfa4ddf1 100644
--- a/fitz/dev_list.c
+++ b/fitz/dev_list.c
@@ -362,9 +362,10 @@ fz_executedisplaylist(fz_displaylist *list, fz_device *dev, fz_matrix topctm, fz
for (node = list->first; node; node = node->next)
{
fz_matrix ctm = fz_concat(node->ctm, topctm);
+ fz_rect rect = fz_transformrect(topctm, node->rect);
/* cull objects to draw using a quick visibility test */
- if (clipped || fz_isemptybbox(fz_intersectbbox(fz_roundrect(node->rect), bounds)))
+ if (clipped || fz_isemptybbox(fz_intersectbbox(fz_roundrect(rect), bounds)))
{
switch (node->cmd)
{