diff options
author | Tor Andersson <tor.andersson@artifex.com> | 2018-02-26 16:31:06 +0100 |
---|---|---|
committer | Tor Andersson <tor.andersson@artifex.com> | 2018-02-27 17:47:54 +0100 |
commit | 9f8e0724789744d81c5de0138e65284a9560e707 (patch) | |
tree | ac4237044423e8ac6bf60a33a879862134c3f8bb /source/pdf/pdf-form.c | |
parent | 8ebca3d5481961f56b5754ab4cfa9544f58c5b0b (diff) | |
download | mupdf-9f8e0724789744d81c5de0138e65284a9560e707.tar.xz |
Remove pdf_xobject wrapper struct.
Just use the pdf_obj directly.
Revise ap_iteration and split annot->dirty into separate flags.
One flag for needs_new_ap, and one for has_new_ap (to be used by
clients who may have cached a rendered annotation).
Diffstat (limited to 'source/pdf/pdf-form.c')
-rw-r--r-- | source/pdf/pdf-form.c | 19 |
1 files changed, 1 insertions, 18 deletions
diff --git a/source/pdf/pdf-form.c b/source/pdf/pdf-form.c index bec1799a..f3d4e3c6 100644 --- a/source/pdf/pdf-form.c +++ b/source/pdf/pdf-form.c @@ -641,26 +641,9 @@ void pdf_update_page(fz_context *ctx, pdf_page *page) { pdf_annot *annot; - /* Mark all dirty annots as clean */ - for (annot = page->annots; annot; annot = annot->next) - pdf_clean_annot(ctx, annot); - - /* Flag all dirty annots */ for (annot = page->annots; annot; annot = annot->next) { - pdf_xobject *ap = pdf_keep_xobject(ctx, annot->ap); - int ap_iteration = annot->ap_iteration; - - fz_try(ctx) - { - pdf_update_annot(ctx, annot); - if ((ap != annot->ap || ap_iteration != annot->ap_iteration)) - pdf_dirty_annot(ctx, annot); - } - fz_always(ctx) - pdf_drop_xobject(ctx, ap); - fz_catch(ctx) - fz_rethrow(ctx); + pdf_update_annot(ctx, annot); } } |