summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPaul Gardiner <paul.gardiner@artifex.com>2013-09-06 23:09:07 +0100
committerPaul Gardiner <paul.gardiner@artifex.com>2013-09-06 23:20:50 +0100
commit211bb9778975289e270f3710692d64a0a825cab9 (patch)
tree4f9b56c8bcdc09c916811e11a44fbbfe4fe9ab07
parent7e91f87c55e4910ab71852fdf9de424492f2d493 (diff)
downloadmupdf-211bb9778975289e270f3710692d64a0a825cab9.tar.xz
Fix problem with object dirty flag
There is the possibility of marking an object dirty via one indirection and testing it via another. This patch ensures that is handled correctly. The scenario occurred within calc.pdf and stopped the update of the display field.
-rw-r--r--source/pdf/pdf-object.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/source/pdf/pdf-object.c b/source/pdf/pdf-object.c
index 704a71df..c434b46e 100644
--- a/source/pdf/pdf-object.c
+++ b/source/pdf/pdf-object.c
@@ -1286,6 +1286,7 @@ pdf_obj_memo(pdf_obj *obj, int *memo)
int pdf_obj_is_dirty(pdf_obj *obj)
{
+ RESOLVE(obj);
if (!obj)
return 0;
return !!(obj->flags & PDF_FLAGS_DIRTY);
@@ -1293,6 +1294,7 @@ int pdf_obj_is_dirty(pdf_obj *obj)
void pdf_dirty_obj(pdf_obj *obj)
{
+ RESOLVE(obj);
if (!obj)
return;
obj->flags |= PDF_FLAGS_DIRTY;