From 2a7161bb864a16449c0648333a2d031aae41db7c Mon Sep 17 00:00:00 2001 From: Sebastian Rasmussen Date: Tue, 18 Jul 2017 23:22:34 +0800 Subject: Synthesize annotation appearance if normal appearance is absent. Fixes part of bug 697951. --- source/pdf/pdf-appearance.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'source/pdf/pdf-appearance.c') diff --git a/source/pdf/pdf-appearance.c b/source/pdf/pdf-appearance.c index a456e104..600cfcb4 100644 --- a/source/pdf/pdf-appearance.c +++ b/source/pdf/pdf-appearance.c @@ -2444,7 +2444,9 @@ void pdf_set_signature_appearance(fz_context *ctx, pdf_document *doc, pdf_annot void pdf_update_appearance(fz_context *ctx, pdf_document *doc, pdf_annot *annot) { pdf_obj *obj = annot->obj; - if (!pdf_dict_get(ctx, obj, PDF_NAME_AP) || pdf_obj_is_dirty(ctx, obj)) + pdf_obj *ap = pdf_dict_get(ctx, obj, PDF_NAME_AP); + + if (!ap || !pdf_dict_get(ctx, ap, PDF_NAME_N) || pdf_obj_is_dirty(ctx, obj)) { fz_annot_type type = pdf_annot_type(ctx, annot); switch (type) -- cgit v1.2.3