summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/sfnt/ttpost.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/src/sfnt/ttpost.c b/src/sfnt/ttpost.c
index f4e8fe508..ac9de6e24 100644
--- a/src/sfnt/ttpost.c
+++ b/src/sfnt/ttpost.c
@@ -169,6 +169,7 @@
FT_UShort* glyph_indices = NULL;
FT_Byte** name_strings = NULL;
+ FT_Byte* q;
if ( (FT_ULong)num_glyphs * 2 > post_len )
@@ -182,9 +183,11 @@
FT_FRAME_ENTER( num_glyphs * 2 ) )
goto Fail;
+ q = (FT_Byte*)stream->cursor;
+
for ( n = 0; n < num_glyphs; n++ )
{
- FT_UShort idx = FT_GET_USHORT();
+ FT_UShort idx = FT_NEXT_USHORT( q );
if ( idx > num_names )
@@ -272,6 +275,7 @@
FT_UShort n;
FT_UShort* glyph_indices = NULL;
+ FT_Byte* q;
/* check the number of glyphs, including the theoretical limit */
@@ -287,9 +291,11 @@
FT_FRAME_ENTER( num_glyphs ) )
goto Fail;
+ q = (FT_Byte*)stream->cursor;
+
for ( n = 0; n < num_glyphs; n++ )
{
- FT_Int idx = n + FT_GET_CHAR();
+ FT_Int idx = n + FT_NEXT_CHAR( q );
if ( idx < 0 || idx > 257 )