From a2c945506ea2a2b58edbde84124094c6b4f69eac Mon Sep 17 00:00:00 2001 From: Tor Andersson Date: Mon, 11 Nov 2013 14:37:03 +0100 Subject: Add fz_new_font_from_buffer function. Use fz_buffer to wrap and reference count data used in font. --- source/xps/xps-glyphs.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'source/xps/xps-glyphs.c') diff --git a/source/xps/xps-glyphs.c b/source/xps/xps-glyphs.c index 02ed6fee..b26e18dc 100644 --- a/source/xps/xps-glyphs.c +++ b/source/xps/xps-glyphs.c @@ -522,7 +522,9 @@ xps_parse_glyphs(xps_document *doc, const fz_matrix *ctm, fz_try(doc->ctx) { - font = fz_new_font_from_memory(doc->ctx, NULL, part->data, part->size, subfontid, 1); + fz_buffer *buf = fz_new_buffer_from_data(doc->ctx, part->data, part->size); + font = fz_new_font_from_buffer(doc->ctx, NULL, buf, subfontid, 1); + fz_drop_buffer(doc->ctx, buf); } fz_catch(doc->ctx) { @@ -542,9 +544,7 @@ xps_parse_glyphs(xps_document *doc, const fz_matrix *ctm, xps_insert_font(doc, fakename, font); - /* NOTE: we keep part->data in the font */ - font->ft_data = part->data; - font->ft_size = part->size; + /* NOTE: we already saved part->data in the buffer in the font */ fz_free(doc->ctx, part->name); fz_free(doc->ctx, part); } -- cgit v1.2.3