ref: 5a00909a774dbdd65490e78d82d69abb06031692
parent: 0dabaa6ce994307b48b3e1911c3c3306472a9e8c
author: Suzuki, Toshiya (鈴木俊哉) <[email protected]>
date: Wed Jan 21 22:50:37 EST 2009
* Fix a bug in POSIX resource-fork accessor since 2008-10-04
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,14 @@
+2009-01-22 suzuki toshiya <[email protected]>
+
+ Fix Savannah bug #25347.
+
+ * src/base/ftobjs.c (open_face_PS_from_sfnt_stream): Rewind
+ the stream to the original position passed to this function,
+ when ft_lookup_PS_in_sfnt_stream() failed.
+ (Mac_Read_sfnt_Resource): Rewind the stream to the head of
+ sfnt resource body, when open_face_PS_from_sfnt_stream()
+ failed.
+
2009-01-19 Michael Lotz <[email protected]>
Fix Savannah bug #25355.
--- a/docs/CHANGES
+++ b/docs/CHANGES
@@ -2,6 +2,10 @@
I. IMPORTANT BUG FIXES
+ - The POSIX support of MacOS resource-fork fonts (Suitcase fonts
+ and LaserWriter Type1 PostScript fonts) was broken in 2.3.8. If
+ FreeType2 is built without Carbon framework, these fonts are not
+ handled correctly. The version 2.3.7 didn't have this bug.
II. IMPORTANT CHANGES
--- a/src/base/ftobjs.c
+++ b/src/base/ftobjs.c
@@ -1417,7 +1417,7 @@
&length,
&is_sfnt_cid );
if ( error )
- return error;
+ goto Exit;
if ( FT_Stream_Seek( stream, pos + offset ) )
goto Exit;
@@ -1603,6 +1603,10 @@
0, NULL,
aface );
if ( !error )
+ goto Exit;
+
+ /* rewind sfnt stream before open_face_PS_from_sfnt_stream() */
+ if ( FT_Stream_Seek( stream, flag_offset + 4 ) )
goto Exit;
if ( FT_ALLOC( sfnt_data, (FT_Long)rlen ) )