summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSebastian Rasmussen <sebras@gmail.com>2018-01-23 23:02:16 +0100
committerSebastian Rasmussen <sebras@gmail.com>2018-01-24 15:29:23 +0100
commitf597300439e62f5e921f0d7b1e880b5c1a1f1607 (patch)
tree00887a66f5e4ebbe4324e64d2baabdb9c33fa63a
parent093fc3b098dc5fadef5d8ad4b225db9fb124758b (diff)
downloadmupdf-f597300439e62f5e921f0d7b1e880b5c1a1f1607.tar.xz
Bug 698883: Reset cmap splay tree pointer, handling resized tree.
Without this change a resized cmap splay tree leads to using stale pointers.
-rw-r--r--source/pdf/pdf-cmap.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/source/pdf/pdf-cmap.c b/source/pdf/pdf-cmap.c
index 29d9c506..00e2afb7 100644
--- a/source/pdf/pdf-cmap.c
+++ b/source/pdf/pdf-cmap.c
@@ -525,6 +525,7 @@ add_range(fz_context *ctx, pdf_cmap *cmap, unsigned int low, unsigned int high,
int new_high = tree[current].high;
tree[current].high = low-1;
add_range(ctx, cmap, high+1, new_high, tree[current].out + high + 1 - tree[current].low, 0, tree[current].many);
+ tree = cmap->tree;
}
/* Now look for where to move to next (left for case 0, right for case 5) */
if (tree[current].low > high) {