diff options
author | Tor Andersson <tor.andersson@artifex.com> | 2016-02-24 17:48:43 +0100 |
---|---|---|
committer | Tor Andersson <tor.andersson@artifex.com> | 2016-02-29 15:53:04 +0100 |
commit | fc9dbdec311d643fe020557f5aa0bde045b27186 (patch) | |
tree | 57affd2cc1310b0a596588b8c44135e38df6b804 /include | |
parent | 2220ffb30ea8773102e9ca0bce4e3b7e31720627 (diff) | |
download | mupdf-fc9dbdec311d643fe020557f5aa0bde045b27186.tar.xz |
Remove pdf_res struct. Use pdf_obj indirect references directly.
Fix refcounting bugs.
Diffstat (limited to 'include')
-rw-r--r-- | include/mupdf/pdf/font.h | 4 | ||||
-rw-r--r-- | include/mupdf/pdf/resource.h | 16 |
2 files changed, 6 insertions, 14 deletions
diff --git a/include/mupdf/pdf/font.h b/include/mupdf/pdf/font.h index f472f188..40a1a3e5 100644 --- a/include/mupdf/pdf/font.h +++ b/include/mupdf/pdf/font.h @@ -122,8 +122,8 @@ float pdf_text_stride(fz_context *ctx, pdf_font_desc *fontdesc, float fontsize, void pdf_run_glyph(fz_context *ctx, pdf_document *doc, pdf_obj *resources, fz_buffer *contents, fz_device *dev, const fz_matrix *ctm, void *gstate, int nestedDepth); -pdf_res* pdf_add_simple_font_res(fz_context *ctx, pdf_document *doc, fz_buffer *buffer); -pdf_res* pdf_add_cid_font_res(fz_context *ctx, pdf_document *doc, fz_buffer *buffer, fz_font *font); +pdf_obj *pdf_add_simple_font_res(fz_context *ctx, pdf_document *doc, fz_buffer *buffer); +pdf_obj *pdf_add_cid_font_res(fz_context *ctx, pdf_document *doc, fz_buffer *buffer, fz_font *font); int pdf_font_writing_supported(fz_font *font); diff --git a/include/mupdf/pdf/resource.h b/include/mupdf/pdf/resource.h index fbcefc2e..41a8c27a 100644 --- a/include/mupdf/pdf/resource.h +++ b/include/mupdf/pdf/resource.h @@ -15,21 +15,13 @@ void pdf_remove_item(fz_context *ctx, fz_store_drop_fn *drop, pdf_obj *key); * refs are stored in an fz_hash_table structure using a hash of the md5 sum of * the data, enabling rapid lookup. */ -typedef struct pdf_res_s pdf_res; - -struct pdf_res_s -{ - int num; - pdf_obj *obj; -}; typedef struct pdf_res_table_s pdf_res_table; -typedef pdf_res *(pdf_res_search_fn)(fz_context *ctx, pdf_document *doc, pdf_res_table *list, +typedef pdf_obj *(pdf_res_search_fn)(fz_context *ctx, pdf_document *doc, pdf_res_table *list, void *item, unsigned char md5[16]); struct pdf_res_table_s { - int count; fz_hash_table *hash; pdf_res_search_fn *search; }; @@ -43,10 +35,10 @@ struct pdf_resource_tables_s pdf_res_table *shading; }; -pdf_res *pdf_find_resource(fz_context *ctx, pdf_document *doc, pdf_res_table *table, void *item, unsigned char md5[16]); +pdf_obj *pdf_find_resource(fz_context *ctx, pdf_document *doc, pdf_res_table *table, void *item, unsigned char md5[16]); void pdf_init_resource_tables(fz_context *ctx, pdf_document *doc); void pdf_drop_resource_tables(fz_context *ctx, pdf_document *doc); -pdf_res *pdf_insert_resource(fz_context *ctx, pdf_res_table *table, void *key, pdf_obj *obj); +pdf_obj *pdf_insert_resource(fz_context *ctx, pdf_res_table *table, void *key, pdf_obj *obj); /* * Functions, Colorspaces, Shadings and Images @@ -64,7 +56,7 @@ int pdf_is_jpx_image(fz_context *ctx, pdf_obj *dict); fz_image *pdf_load_image(fz_context *ctx, pdf_document *doc, pdf_obj *obj); -pdf_res* pdf_add_image_res(fz_context *ctx, pdf_document *doc, fz_image *image, int mask); +pdf_obj* pdf_add_image_res(fz_context *ctx, pdf_document *doc, fz_image *image, int mask); /* * Pattern |