diff options
Diffstat (limited to 'src/gxvalid/gxvmort5.c')
-rw-r--r-- | src/gxvalid/gxvmort5.c | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/gxvalid/gxvmort5.c b/src/gxvalid/gxvmort5.c index 5c90ed73b..a7cabc359 100644 --- a/src/gxvalid/gxvmort5.c +++ b/src/gxvalid/gxvmort5.c @@ -158,16 +158,18 @@ FT_UNUSED( state ); - setMark = ( flags >> 15 ) & 1; - dontAdvance = ( flags >> 14 ) & 1; - currentIsKashidaLike = ( flags >> 13 ) & 1; - markedIsKashidaLike = ( flags >> 12 ) & 1; - currentInsertBefore = ( flags >> 11 ) & 1; - markedInsertBefore = ( flags >> 10 ) & 1; - currentInsertCount = ( flags & 0x03E0 ) / 0x0020; - markedInsertCount = ( flags & 0x001F ); - currentInsertList = glyphOffset.ul / 0x00010000UL; - markedInsertList = glyphOffset.ul & 0x0000FFFFUL; + setMark = FT_BOOL( ( flags >> 15 ) & 1 ); + dontAdvance = FT_BOOL( ( flags >> 14 ) & 1 ); + currentIsKashidaLike = FT_BOOL( ( flags >> 13 ) & 1 ); + markedIsKashidaLike = FT_BOOL( ( flags >> 12 ) & 1 ); + currentInsertBefore = FT_BOOL( ( flags >> 11 ) & 1 ); + markedInsertBefore = FT_BOOL( ( flags >> 10 ) & 1 ); + + currentInsertCount = (FT_Byte)( ( flags >> 5 ) & 0x1F ); + markedInsertCount = (FT_Byte)( flags & 0x001F ); + + currentInsertList = (FT_UShort)( glyphOffset.ul >> 16 ); + markedInsertList = (FT_UShort)( glyphOffset.ul ); if ( 0 != currentInsertList && 0 != currentInsertCount ) { |