summaryrefslogtreecommitdiff
path: root/Build/source/texk/xdvipdfmx/src/fontmap.c
diff options
context:
space:
mode:
authorKarl Berry <karl@freefriends.org>2010-03-30 00:14:53 +0000
committerKarl Berry <karl@freefriends.org>2010-03-30 00:14:53 +0000
commit779a9884b38001603760cc07d1fc4d71c4ecf381 (patch)
tree17440ff0b9217698f055984a4c2a7be0f9accde4 /Build/source/texk/xdvipdfmx/src/fontmap.c
parenta41bd72f4fb1b22175a653065ad065fced11d4da (diff)
patch for \special{pdf:minorversion 5} from ChoF (and memory leaks), commit ok from Jonathan
git-svn-id: svn://tug.org/texlive/trunk@17618 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/xdvipdfmx/src/fontmap.c')
-rw-r--r--Build/source/texk/xdvipdfmx/src/fontmap.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/Build/source/texk/xdvipdfmx/src/fontmap.c b/Build/source/texk/xdvipdfmx/src/fontmap.c
index 949bd1adb23..e8766f53518 100644
--- a/Build/source/texk/xdvipdfmx/src/fontmap.c
+++ b/Build/source/texk/xdvipdfmx/src/fontmap.c
@@ -119,6 +119,10 @@ pdf_clear_fontmap_record (fontmap_rec *mrec)
RELEASE(mrec->opt.otl_tags);
if (mrec->opt.charcoll)
RELEASE(mrec->opt.charcoll);
+#ifdef XETEX
+ if (mrec->opt.glyph_widths)
+ RELEASE(mrec->opt.glyph_widths);
+#endif
pdf_init_fontmap_record(mrec);
}
@@ -1071,7 +1075,7 @@ pdf_insert_native_fontmap_record (const char *name, const char *path, int index,
mrec = NEW(1, fontmap_rec);
pdf_init_fontmap_record(mrec);
- mrec->map_name = mstrdup(fontmap_key);
+ mrec->map_name = fontmap_key;
mrec->enc_name = mstrdup(layout_dir == 0 ? "Identity-H" : "Identity-V");
mrec->font_name = (path != NULL) ? mstrdup(path) : NULL;
mrec->opt.index = index;
@@ -1138,10 +1142,10 @@ pdf_load_native_font_from_path(const char *ps_name, int layout_dir, int extend,
}
if (error == 0)
- return pdf_insert_native_fontmap_record(ps_name, filename, index, face,
+ error = pdf_insert_native_fontmap_record(ps_name, filename, index, face,
layout_dir, extend, slant, embolden);
- else
- return error;
+ RELEASE(filename);
+ return error;
}
FT_Int ft_major; /* global so that dvi.c can check the version */