diff options
Diffstat (limited to 'Build')
-rw-r--r-- | Build/source/texk/README | 2 | ||||
-rw-r--r-- | Build/source/texk/ttfdump/ChangeLog | 8 | ||||
-rw-r--r-- | Build/source/texk/ttfdump/libttf/cmap.c | 3 | ||||
-rw-r--r-- | Build/source/texk/ttfdump/libttf/name.c | 4 | ||||
-rw-r--r-- | Build/source/texk/ttfdump/libttf/post.c | 4 |
5 files changed, 20 insertions, 1 deletions
diff --git a/Build/source/texk/README b/Build/source/texk/README index bcf7aa9192e..85f0610b439 100644 --- a/Build/source/texk/README +++ b/Build/source/texk/README @@ -96,7 +96,7 @@ texlive - scripts maintained here, by us ttf2pk2 - maintained here, by us -ttfdump - ? +ttfdump - maintained here, by us, since Taiwan upstream apparently gone. upmendex 0.51 - by Takuji Tanaka http://www.ctan.org/pkg/upmendex diff --git a/Build/source/texk/ttfdump/ChangeLog b/Build/source/texk/ttfdump/ChangeLog index c7af707da7d..5d84a8c5b7e 100644 --- a/Build/source/texk/ttfdump/ChangeLog +++ b/Build/source/texk/ttfdump/ChangeLog @@ -1,3 +1,11 @@ +2016-07-15 Adrian Johnson <ajohnson@redneon.com> + + * libttf/cmap.c, + * libttf/name.c, + * libttf/post.c: check for null before dereferencing in case + of missing cmap/name/post tables. + tex-live mail of 9 Jul 2016 18:17:16. + 2015-07-07 Peter Breitenlohner <peb@mppmu.mpg.de> * Makefile.am: Better dependencies for 'make check'. diff --git a/Build/source/texk/ttfdump/libttf/cmap.c b/Build/source/texk/ttfdump/libttf/cmap.c index 1d1a68fb530..e75b0adfb60 100644 --- a/Build/source/texk/ttfdump/libttf/cmap.c +++ b/Build/source/texk/ttfdump/libttf/cmap.c @@ -225,6 +225,9 @@ void ttfFreeCMAP(CMAPPtr cmap) { USHORT i; + if (!cmap) + return; + free(cmap->encoding); for (i = 0; i < cmap->numberOfMaps; i++) diff --git a/Build/source/texk/ttfdump/libttf/name.c b/Build/source/texk/ttfdump/libttf/name.c index 7f708b55c51..6c8c6c64d1e 100644 --- a/Build/source/texk/ttfdump/libttf/name.c +++ b/Build/source/texk/ttfdump/libttf/name.c @@ -72,6 +72,10 @@ void ttfPrintNAME(FILE *fp,NAMEPtr name) void ttfFreeNAME(NAMEPtr name) { USHORT i; + + if (!name) + return; + for (i=0;i<name->numberOfRecords;i++) ttfFreeNameRecordData(name->NameRecords+i); free(name->NameRecords); diff --git a/Build/source/texk/ttfdump/libttf/post.c b/Build/source/texk/ttfdump/libttf/post.c index c28e6593b72..ab8f13c227c 100644 --- a/Build/source/texk/ttfdump/libttf/post.c +++ b/Build/source/texk/ttfdump/libttf/post.c @@ -129,6 +129,10 @@ void ttfPrintPOST(FILE *fp,POSTPtr post) void ttfFreePOST(POSTPtr post) { USHORT i, numGlyphs; + + if (!post) + return; + switch (post->format) { case 0x00020000: |