diff options
Diffstat (limited to 'Build/source/texk/dvipdfm-x/pdfdoc.c')
-rw-r--r-- | Build/source/texk/dvipdfm-x/pdfdoc.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/Build/source/texk/dvipdfm-x/pdfdoc.c b/Build/source/texk/dvipdfm-x/pdfdoc.c index 8299af94eb2..76a4ada1ccd 100644 --- a/Build/source/texk/dvipdfm-x/pdfdoc.c +++ b/Build/source/texk/dvipdfm-x/pdfdoc.c @@ -520,6 +520,9 @@ pdf_doc_get_page_resources (pdf_doc *p, const char *category) if (!resources) { resources = pdf_new_dict(); pdf_add_dict(res_dict, pdf_new_name(category), resources); + } else if (pdf_obj_typeof(resources) == PDF_INDIRECT) { + resources = pdf_deref_obj(resources); /* FIXME: deref_obj increment link count */ + pdf_release_obj(resources); /* FIXME: just to decrement link count */ } return resources; @@ -533,10 +536,12 @@ pdf_doc_add_page_resource (const char *category, pdf_obj *resources; pdf_obj *duplicate; +#if 0 if (!PDF_OBJ_INDIRECTTYPE(resource_ref)) { WARN("Passed non indirect reference..."); resource_ref = pdf_ref_obj(resource_ref); /* leak */ } +#endif resources = pdf_doc_get_page_resources(p, category); duplicate = pdf_lookup_dict(resources, resource_name); if (duplicate && pdf_compare_reference(duplicate, resource_ref)) { |