* builds/unix/freetype-config.in: Add new flag `--ftversion' to

return the FreeType version.  Suggested by George Williams
<gww@silcom.com>.


* docs/CHANGES: Updated.


* src/otvalid/otvmod.c (otv_validate): Deallocate arrays in case
of error.  Reported by YAMANO-UCHI Hidetoshi <mer@din.or.jp>.


* src/psaux/t1decode.c (t1_decoder_parse_charstrings)
<op_closepath>: Accept `T1_Parse_Have_Moveto' state also which can
happen in empty glyphs.  Reported by Ian Brown
<ian.brown@printsoft.de>.
This commit is contained in:
Werner Lemberg 2005-02-10 08:18:27 +00:00
parent 4c1867bfab
commit c9114b9926
5 changed files with 54 additions and 3 deletions

View File

@ -1,3 +1,23 @@
2005-02-10 Werner Lemberg <wl@gnu.org>
* builds/unix/freetype-config.in: Add new flag `--ftversion' to
return the FreeType version. Suggested by George Williams
<gww@silcom.com>.
* docs/CHANGES: Updated.
2005-02-09 Werner Lemberg <wl@gnu.org>
* src/otvalid/otvmod.c (otv_validate): Deallocate arrays in case
of error. Reported by YAMANO-UCHI Hidetoshi <mer@din.or.jp>.
2005-02-08 Werner Lemberg <wl@gnu.org>
* src/psaux/t1decode.c (t1_decoder_parse_charstrings)
<op_closepath>: Accept `T1_Parse_Have_Moveto' state also which can
happen in empty glyphs. Reported by Ian Brown
<ian.brown@printsoft.de>.
2005-02-04 Werner Lemberg <wl@gnu.org> 2005-02-04 Werner Lemberg <wl@gnu.org>
* src/otlayout/*: Removed. Obsolete. * src/otlayout/*: Removed. Obsolete.

View File

@ -23,6 +23,7 @@ Options:
the FreeType library the FreeType library
--exec-prefix=EPREFIX override \`--exec-prefix' value with EPREFIX --exec-prefix=EPREFIX override \`--exec-prefix' value with EPREFIX
--version display libtool version of the FreeType library --version display libtool version of the FreeType library
--ftversion display FreeType version number
--libs display flags for linking with the FreeType library --libs display flags for linking with the FreeType library
--libtool display library name for linking with libtool --libtool display library name for linking with libtool
--cflags display flags for compiling with the FreeType --cflags display flags for compiling with the FreeType
@ -65,6 +66,19 @@ while test $# -gt 0 ; do
echo @ft_version@ echo @ft_version@
exit 0 exit 0
;; ;;
--ftversion)
major=`grep define @prefix@/include/freetype2/freetype/freetype.h \
| grep FREETYPE_MAJOR \
| sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'`
minor=`grep define @prefix@/include/freetype2/freetype/freetype.h \
| grep FREETYPE_MINOR \
| sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'`
patch=`grep define @prefix@/include/freetype2/freetype/freetype.h \
| grep FREETYPE_PATCH \
| sed 's/.*[ ]\([0-9][0-9]*\).*/\1/'`
echo $major.$minor.$patch
exit 0
;;
--cflags) --cflags)
echo_cflags=yes echo_cflags=yes
;; ;;

View File

@ -17,6 +17,8 @@ LATEST CHANGES BETWEEN 2.1.10 and 2.1.9
distortions. It has been introduced in version 2.1.8, and it is distortions. It has been introduced in version 2.1.8, and it is
highly recommended to upgrade. highly recommended to upgrade.
- FreeType didn't properly parse empty Type 1 glyphs.
II. IMPORTANT CHANGES II. IMPORTANT CHANGES
@ -48,6 +50,9 @@ LATEST CHANGES BETWEEN 2.1.10 and 2.1.9
not mentioned this explicitly, but implementors might have not mentioned this explicitly, but implementors might have
relied on this after looking into the source files. relied on this after looking into the source files.
- A new option `--ftversion' has been added to freetype-config to
return the FreeType version.
LATEST CHANGES BETWEEN 2.1.9 and 2.1.8 LATEST CHANGES BETWEEN 2.1.9 and 2.1.8

View File

@ -4,7 +4,7 @@
/* */ /* */
/* FreeType's OpenType validation module implementation (body). */ /* FreeType's OpenType validation module implementation (body). */
/* */ /* */
/* Copyright 2004 by */ /* Copyright 2004, 2005 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -178,6 +178,17 @@
*ot_jstf = (FT_Bytes)jstf; *ot_jstf = (FT_Bytes)jstf;
Exit: Exit:
if ( error ) {
FT_Memory memory = FT_FACE_MEMORY( face );
FT_FREE( base );
FT_FREE( gdef );
FT_FREE( gpos );
FT_FREE( gsub );
FT_FREE( jstf );
}
return error; return error;
} }

View File

@ -4,7 +4,7 @@
/* */ /* */
/* PostScript Type 1 decoding routines (body). */ /* PostScript Type 1 decoding routines (body). */
/* */ /* */
/* Copyright 2000-2001, 2002, 2003, 2004 by */ /* Copyright 2000-2001, 2002, 2003, 2004, 2005 by */
/* David Turner, Robert Wilhelm, and Werner Lemberg. */ /* David Turner, Robert Wilhelm, and Werner Lemberg. */
/* */ /* */
/* This file is part of the FreeType project, and may only be used, */ /* This file is part of the FreeType project, and may only be used, */
@ -796,7 +796,8 @@
FT_TRACE4(( " closepath" )); FT_TRACE4(( " closepath" ));
close_contour( builder ); close_contour( builder );
if ( builder->parse_state != T1_Parse_Have_Path ) if ( !( builder->parse_state == T1_Parse_Have_Path ||
builder->parse_state == T1_Parse_Have_Moveto ) )
goto Syntax_Error; goto Syntax_Error;
builder->parse_state = T1_Parse_Have_Width; builder->parse_state = T1_Parse_Have_Width;
break; break;