ref: 63765a8f2af9d379f5571c359fb7133b35878924
parent: 24be60b5f160d9aad7366bf3043ec8069664df0b
author: Werner Lemberg <[email protected]>
date: Sun Jan 1 05:43:41 EST 2017
[sfnt] Return correct number of named instances for TTCs. Without this patch, requesting information for face index N returned the data for face index N+1 (or index 0). * src/sfnt/sfobjs.c (sfnt_init_face): Correctly adjust `face_index' for negative `face_instance_index' values.
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2017-01-01 Werner Lemberg <[email protected]>
+
+ [sfnt] Return correct number of named instances for TTCs.
+
+ Without this patch, requesting information for face index N returned
+ the data for face index N+1 (or index 0).
+
+ * src/sfnt/sfobjs.c (sfnt_init_face): Correctly adjust `face_index'
+ for negative `face_instance_index' values.
+
2016-12-31 Werner Lemberg <[email protected]>
*/*: Use hex numbers for errors in tracing messages.
--- a/src/sfnt/sfobjs.c
+++ b/src/sfnt/sfobjs.c
@@ -909,6 +909,10 @@
face_index = FT_ABS( face_instance_index ) & 0xFFFF;
+ /* value -(N+1) requests information on index N */
+ if ( face_instance_index < 0 )
+ face_index--;
+
if ( face_index >= face->ttc_header.count )
{
if ( face_instance_index >= 0 )