Part of #101079:
2005-11-17 Behdad Esfahbod <behdad@gnome.org> Part of #101079: * pango/opentype/ftxopen.c (Load_Lookup): In extension subtables, offset is relative to the extension subtable, not the original table. (Greg Aumann) * pango/opentype/ftxgpos.c (Load_BaseArray): When reading BaseAnchor, skip offsets that are zero. Works around bug in Doulos SIL Regular.
This commit is contained in:
parent
1b2c314b80
commit
612b6cf609
|
@ -2080,6 +2080,12 @@
|
||||||
|
|
||||||
FORGET_Frame();
|
FORGET_Frame();
|
||||||
|
|
||||||
|
if (new_offset == base_offset) {
|
||||||
|
/* Doulos SIL Regular is buggy and has zer offsets here. Skip */
|
||||||
|
ban[n].PosFormat = 0;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
cur_offset = FILE_Pos();
|
cur_offset = FILE_Pos();
|
||||||
if ( FILE_Seek( new_offset ) ||
|
if ( FILE_Seek( new_offset ) ||
|
||||||
( error = Load_Anchor( &ban[n], stream ) ) != TT_Err_Ok )
|
( error = Load_Anchor( &ban[n], stream ) ) != TT_Err_Ok )
|
||||||
|
|
|
@ -631,9 +631,11 @@
|
||||||
if ( FILE_Seek( new_offset ) || ACCESS_Frame( 8L ) )
|
if ( FILE_Seek( new_offset ) || ACCESS_Frame( 8L ) )
|
||||||
goto Fail;
|
goto Fail;
|
||||||
|
|
||||||
(void)GET_UShort(); /* format should be 1 */
|
if (GET_UShort() != 1) /* format should be 1 */
|
||||||
|
goto Fail;
|
||||||
|
|
||||||
l->LookupType = GET_UShort();
|
l->LookupType = GET_UShort();
|
||||||
new_offset = GET_ULong() + base_offset;
|
new_offset += GET_ULong();
|
||||||
|
|
||||||
FORGET_Frame();
|
FORGET_Frame();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue