summaryrefslogtreecommitdiff
path: root/source/pdf/pdf-form.c
diff options
context:
space:
mode:
authorTor Andersson <tor.andersson@artifex.com>2018-02-26 16:31:06 +0100
committerTor Andersson <tor.andersson@artifex.com>2018-02-27 17:47:54 +0100
commit9f8e0724789744d81c5de0138e65284a9560e707 (patch)
treeac4237044423e8ac6bf60a33a879862134c3f8bb /source/pdf/pdf-form.c
parent8ebca3d5481961f56b5754ab4cfa9544f58c5b0b (diff)
downloadmupdf-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.c19
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);
}
}