modules/freetype2/ChangeLog.23

changeset 0
6474c204b198
     1.1 --- /dev/null	Thu Jan 01 00:00:00 1970 +0000
     1.2 +++ b/modules/freetype2/ChangeLog.23	Wed Dec 31 06:09:35 2014 +0100
     1.3 @@ -0,0 +1,7948 @@
     1.4 +2010-02-13  Werner Lemberg  <wl@gnu.org>
     1.5 +
     1.6 +	* Version 2.3.12 released.
     1.7 +	==========================
     1.8 +
     1.9 +
    1.10 +	Tag sources with `VER-2-3-12'.
    1.11 +
    1.12 +	* docs/CHANGES: Updated.
    1.13 +
    1.14 +	* docs/VERSION.DLL: Update documentation and bump version number to
    1.15 +	2.3.12.
    1.16 +
    1.17 +	* README, Jamfile (RefDoc),
    1.18 +	builds/win32/vc2005/freetype.vcproj, builds/win32/vc2005/index.html,
    1.19 +	builds/win32/vc2008/freetype.vcproj, builds/win32/vc2008/index.html,
    1.20 +	builds/win32/visualc/freetype.dsp,
    1.21 +	builds/win32/visualc/freetype.vcproj,
    1.22 +	builds/win32/visualc/index.html, builds/win32/visualce/freetype.dsp,
    1.23 +	builds/win32/visualce/freetype.vcproj,
    1.24 +	builds/win32/visualce/index.html,
    1.25 +	builds/wince/vc2005-ce/freetype.vcproj,
    1.26 +	builds/wince/vc2005-ce/index.html,
    1.27 +	builds/wince/vc2008-ce/freetype.vcproj,
    1.28 +	builds/wince/vc2008-ce/index.html: s/2.3.11/2.3.12/, s/2311/2312/.
    1.29 +
    1.30 +	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 12.
    1.31 +
    1.32 +	* builds/unix/configure.raw (version_info): Set to 10:0:4.
    1.33 +
    1.34 +2010-02-12  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
    1.35 +
    1.36 +	Improve autotool version checking to work with beta releases.
    1.37 +
    1.38 +	* autogen.sh (check_tool_version): Improve the extraction of version
    1.39 +	number from "tool --version" output.  Some beta releases of
    1.40 +	autotools have extra strings before version number.
    1.41 +
    1.42 +2010-02-12  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
    1.43 +
    1.44 +	Fix overallocating bug in FT_Outline_New_Internal().
    1.45 +
    1.46 +	* src/base/ftoutln.c (FT_Outline_New_Internal): The length of
    1.47 +	FT_Outline->points[] should be numPoints, not 2 * numPoints.
    1.48 +	Found by Paul Messmer, see
    1.49 +	http://lists.gnu.org/archive/html/freetype-devel/2010-02/msg00003.html
    1.50 +
    1.51 +2010-02-10  Ken Sharp  <ken.sharp@artifex.com>
    1.52 +
    1.53 +	Really fix Savannah bug #28678 (part 2).
    1.54 +
    1.55 +	Since we consider `sbw' for the horizontal direction only, we still have
    1.56 +	to synthesize vertical metrics if the user wants to use the vertical
    1.57 +	writing direction.
    1.58 +
    1.59 +	* src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c
    1.60 +	(cid_slot_load_glyph), src/type1/t1gload.c (T1_Load_Glyph):
    1.61 +	Synthesize vertical metrics (only) if FT_LOAD_VERTICAL_LAYOUT is
    1.62 +	set.
    1.63 +
    1.64 +2010-02-10  Ken Sharp  <ken.sharp@artifex.com>
    1.65 +
    1.66 +	Really fix Savannah bug #28678 (part 1).
    1.67 +
    1.68 +	After long discussion, we now consider the character width vector
    1.69 +	(wx,wy) returned by the `sbw' Type 1 operator as being part of *one*
    1.70 +	direction only.  For example, if you are using the horizontal
    1.71 +	writing direction, you get the horizontal and vertical components of
    1.72 +	the advance width for this direction.  Note that OpenType and CFF fonts
    1.73 +	don't have such a vertical component; instead, the GPOS table can be
    1.74 +	used to generate two-dimensional advance widths (but this isn't
    1.75 +	handled by FreeType).
    1.76 +
    1.77 +	* include/freetype/ftincrem.h (FT_Incremental_MetricsRec): Add
    1.78 +	`advance_v' field to hold the vertical component of the advance
    1.79 +	value.
    1.80 +
    1.81 +	* src/truetype/ttgload.c (tt_get_metrics), src/cff/cffgload.c
    1.82 +	(cff_slot_load), src/type1/t1gload.c
    1.83 +	(T1_Parse_Glyph_And_Get_Char_String), src/cid/cidgload.c
    1.84 +	(cid_load_glyph): Use it.
    1.85 +
    1.86 +2010-02-08  Werner Lemberg  <wl@gnu.org>
    1.87 +
    1.88 +	* devel/ftoption.h [FT_CONFIG_OPTION_PIC]: Define.
    1.89 +
    1.90 +2010-02-04  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
    1.91 +
    1.92 +	Prevent NULL pointer dereference passed to FT_Module_Requester.
    1.93 +
    1.94 +	* src/sfnt/sfdriver.c (sfnt_get_interface): Don't use `module'.
    1.95 +	* src/psnames/psmodule.c (psnames_get_interface): Ditto.
    1.96 +
    1.97 +	* src/cff/cffdrivr.c (cff_get_interface): Check NULL `driver'.
    1.98 +	* src/truetype/ttdriver.c (tt_get_interface): Ditto.
    1.99 +
   1.100 +2010-01-29  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.101 +
   1.102 +	Fix memory leaks in previous patch.
   1.103 +
   1.104 +	* src/sfnt/sfobjs.c (sfnt_load_face): Don't overwrite the strings
   1.105 +	allocated for face->root.family_name and style_name.
   1.106 +
   1.107 +2010-01-29  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.108 +
   1.109 +	New parameters for FT_Open_Face() to ignore preferred family names.
   1.110 +
   1.111 +	Preferred family names should be used for legacy systems that
   1.112 +	can hold only a few faces (<= 4) for a family name. Suggested by
   1.113 +	Andreas Heinrich.
   1.114 +	http://lists.gnu.org/archive/html/freetype/2010-01/msg00001.html
   1.115 +
   1.116 +	* include/freetype/ftsnames.h (FT_PARAM_TAG_IGNORE_PREFERRED_FAMILY,
   1.117 +	FT_PARAM_TAG_IGNORE_PREFERRED_SUBFAMILY): Define.
   1.118 +
   1.119 +	* src/sfnt/sfobjs.c (sfnt_load_face): Check the arguments and
   1.120 +	ignore preferred family and subfamily names if requested.
   1.121 +
   1.122 +2010-01-27  Ken Sharp  <ken.sharp@artifex.com>
   1.123 +
   1.124 +	Fix Savannah bug #28678.
   1.125 +
   1.126 +	* src/cff/cffgload.c (cff_slot_load), src/cid/cidgload.c
   1.127 +	(cid_load_glyph): Handle vertical metrics correctly.
   1.128 +
   1.129 +	* src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String): Handle
   1.130 +	vertical metrics correctly.
   1.131 +	(T1_Load_Glyph): Don't synthesize vertical metrics.
   1.132 +
   1.133 +2010-01-14  Werner Lemberg  <wl@gnu.org>
   1.134 +
   1.135 +	Make FT_Set_Transform work if no renderer is available.
   1.136 +
   1.137 +	* src/base/ftobjs.c (FT_Load_Glyph): Apply `standard' transformation
   1.138 +	if no renderer is compiled into the library.
   1.139 +
   1.140 +2010-01-14  Werner Lemberg  <wl@gnu.org>
   1.141 +
   1.142 +	Fix compilation warning.
   1.143 +
   1.144 +	* src/base/ftbase.h: s/LOCAL_DEF/LOCAL/.
   1.145 +	* src/base/ftobjc.s: Include ftbase.h conditionally.
   1.146 +
   1.147 +2010-01-11  Kwang Yul Seo  <skyul@company100.net>
   1.148 +
   1.149 +	Provide inline assembly code for RVCT compiler.
   1.150 +	This is Savannah patch #7059.
   1.151 +
   1.152 +	* include/freetype/config/ftconfig.h (FT_MULFIX_ASSEMBLER,
   1.153 +	FT_MulFix_arm) [__CC_ARM || __ARM_CC]: Define.
   1.154 +
   1.155 +2010-01-08  Ken Sharp  <ken.sharp@artifex.com>
   1.156 +
   1.157 +	Fix Savannah bug #28521.
   1.158 +
   1.159 +	Issue #28226 involved a work-around for a font which used the
   1.160 +	`setcurrentpoint' operator in an invalid way; this operator is only
   1.161 +	supposed to be used with the result of OtherSubrs, and the font used
   1.162 +	it directly.  The supplied patch removed the block of code which
   1.163 +	checked this usage entirely.
   1.164 +
   1.165 +	This turns out to be a Bad Thing.  If `setcurrentpoint' is being
   1.166 +	used correctly it should reset the flex flag in the decoder.  If we
   1.167 +	don't do this then the flag never gets reset and we omit any further
   1.168 +	contours from the glyph (at least until we close the path or
   1.169 +	similar).
   1.170 +
   1.171 +	* src/psaux/t1decode.c (t1_decoder_parse_charstrings)
   1.172 +	<op_setcurrentpoint>: Handle `flex_state' correctly.
   1.173 +
   1.174 +2010-01-05  Werner Lemberg  <wl@gnu.org>
   1.175 +
   1.176 +	Apply reports from clang static analyzer.
   1.177 +
   1.178 +	* src/lzw/ftlzw.c (ft_lzw_file_init), src/base/ftstroke.c
   1.179 +	(FT_Stroker_ParseOutline), src/base/ftsynth.c
   1.180 +	(FT_GlyphSlot_Embolden): Remove dead code.
   1.181 +
   1.182 +	* src/base/ftpatent.c (_tt_check_patents_in_table): Initialize
   1.183 +	`offset_i' and `length_i'.
   1.184 +
   1.185 +2010-01-05  Ralph Giles  <giles@ghostscript.com>
   1.186 +
   1.187 +	Enable the incremental font interface by default.
   1.188 +
   1.189 +	Ghostscript requires the incremental font interface for handling
   1.190 +	some Postscript documents.  It is moving to using FreeType as its
   1.191 +	primary renderer; supporting this in the default build makes it
   1.192 +	Ghostscript to be linked against the system FreeType when one is
   1.193 +	available.
   1.194 +
   1.195 +	* include/freetype/config/ftoption.h (FT_CONFIG_OPTION_INCREMENTAL):
   1.196 +	Uncomment.
   1.197 +
   1.198 +2010-01-05  Werner Lemberg  <wl@gnu.org>
   1.199 +
   1.200 +	Fix Savannah bug #28395.
   1.201 +
   1.202 +	* src/truetype/ttdriver.c (Load_Glyph), src/type1/t1gload.c
   1.203 +	(T1_Loada_Glyph): Don't check `num_glyphs' if incremental interface
   1.204 +	is used.
   1.205 +
   1.206 +2010-01-05  Ken Sharp  <ken.sharp@artifex.com>
   1.207 +
   1.208 +	Make Type 1 `seac' operator work with incremental interface.
   1.209 +	This fixes Savannah bug #28480.
   1.210 +
   1.211 +	* src/psaux/t1decode.c (t1operator_seac): Don't check `glyph_names'
   1.212 +	if incremental interface is used.
   1.213 +
   1.214 +2010-01-04  Ken Sharp  <ken.sharp@artifex.com>
   1.215 +
   1.216 +	Make incremental interface work with TrueType fonts.
   1.217 +	This fixes Savannah bug #28478.
   1.218 +
   1.219 +	* src/truetype/ttgload.c (load_truetype_glyph): Don't check
   1.220 +	`glyf_offset' if incremental interface is used.
   1.221 +
   1.222 +2009-12-31  Lars Abrahamsson  <wonko@opera.com>
   1.223 +
   1.224 +	Make compilation with FT_CONFIG_OPTION_PIC work again.
   1.225 +
   1.226 +	* src/base/ftglyph.c (FT_Glyph_To_Bitmap) [FT_CONFIG_OPTION_PIC]:
   1.227 +	Declare `library' for FT_BITMAP_GLYPH_CLASS_GET.
   1.228 +
   1.229 +	* src/base/ftinit.c (ft_destroy_default_module_classes,
   1.230 +	ft_create_default_module_classes): Use proper casts (needed for C++
   1.231 +	compilation).
   1.232 +
   1.233 +	* src/sfnt/ttcmap.c (tt_cmap13_class_rec): Use FT_DEFINE_TT_CMAP.
   1.234 +
   1.235 +2009-12-22  Marc Kleine-Budde  <mkl@pengutronix.de>
   1.236 +
   1.237 +	Make freetype-config aware of $SYSROOT.
   1.238 +	This is Savannah patch #7040.
   1.239 +
   1.240 +	* builds/unix/freetype-config.in: Decorate with ${SYSROOT} where
   1.241 +	appropriate.
   1.242 +
   1.243 +2009-12-20  Werner Lemberg  <wl@gnu.org>
   1.244 +
   1.245 +	Fix compiler warning.
   1.246 +	Reported by Sean.
   1.247 +
   1.248 +	* src/base/ftdbgmem.c [!FT_DEBUG_MEMORY]: ANSI C doesn't like empty
   1.249 +	source files; however, some compilers warn about an unused variable
   1.250 +	declaration.  This is now replaced with a typedef.
   1.251 +
   1.252 +2009-12-18  Werner Lemberg  <wl@gnu.org>
   1.253 +
   1.254 +	Fix Savannah bug #28320.
   1.255 +
   1.256 +	There exist corrupt, subsetted fonts (embedded in PDF files) which
   1.257 +	contain a private dict that ends with an unterminated floating point
   1.258 +	number (no operator following).  We now ignore this error (as
   1.259 +	acrobat does).
   1.260 +
   1.261 +	* src/cff/cffparse.c (cff_parser_run): Don't emit a syntax error for
   1.262 +	unterminated floating point numbers.
   1.263 +
   1.264 +2009-12-16  Werner Lemberg  <wl@gnu.org>
   1.265 +
   1.266 +	Really fix compiler warnings.
   1.267 +	Reported by Sean.
   1.268 +
   1.269 +	* src/truetype/ttgxvar.c (GX_PT_POINTS_ARE_WORDS,
   1.270 +	GX_PT_POINT_RUN_COUNT_MASK): Convert enum values to macros.
   1.271 +
   1.272 +2009-12-16  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.273 +
   1.274 +	Improve configure.raw to copy some options from CFLAGS to LDFLAGS.
   1.275 +	The linker of Mac OS X 10.6 is sensitive to the architecture.  If
   1.276 +	the architectures are specified explicitly for the C compiler, the
   1.277 +	linker requires the architecture specifications too.
   1.278 +
   1.279 +	* builds/unix/configure.raw: Replace `-isysroot' option parser by
   1.280 +	more generic argument parser.
   1.281 +
   1.282 +2009-12-15  Werner Lemberg  <wl@gnu.org>
   1.283 +
   1.284 +	Fix compiler warnings.
   1.285 +	Reported by Sean.
   1.286 +
   1.287 +	* src/truetype/ttgxvar.c (ft_var_readpackeddeltas): Fix counter data
   1.288 +	type.
   1.289 +
   1.290 +2009-12-14  Ken Sharp  <ken.sharp@artifex.com>
   1.291 +
   1.292 +	Ignore invalid `setcurrentpoint' operations in Type 1 fonts.
   1.293 +	This fixes Savannah bug #28226.
   1.294 +
   1.295 +	At least two wild PostScript files of unknown provenance contain
   1.296 +	Type 1 fonts, apparently converted from TrueType fonts in earlier
   1.297 +	PDF versions of the files, which use the `setcurrentpoint' operator
   1.298 +	inappropriately.
   1.299 +
   1.300 +	FreeType currently throws an error in this case, but Ghostscript and
   1.301 +	Adobe Distiller both accept the fonts and ignore the problem.  This
   1.302 +	commit #ifdefs out the check so PostScript interpreters using
   1.303 +	FreeType can render these files.
   1.304 +
   1.305 +	The specification says `setcurrentpoint' should only be used to set
   1.306 +	the point after a `Subr' call, but these fonts use it to set the
   1.307 +	initial point to (0,0).  Unnecessarily so, as they correctly use an
   1.308 +	`hsbw' operation which implicitly sets the initial point.
   1.309 +
   1.310 +	* src/psaux/t1decode.c (t1_decoder_parse_charstrings)
   1.311 +	<op_setcurrentpoint>: Comment out code.
   1.312 +
   1.313 +2009-12-14  Bram Tassyns  <bramt@enfocus.be>
   1.314 +
   1.315 +	Fix parsing of /CIDFontVersion.
   1.316 +	This fixes Savannah bug #28287.
   1.317 +
   1.318 +	* src/cid/cidtoken.h: `cid_version' in CID_FaceInfoRec (in
   1.319 +	t1tables.h) is of type FT_Fixed.
   1.320 +
   1.321 +2009-12-14  Werner Lemberg  <wl@gnu.org>
   1.322 +
   1.323 +	Trace glyph index in CID module.
   1.324 +	Suggested in Savannah patch #7023.
   1.325 +
   1.326 +	* src/cid/cidgload.c (cid_load_glyph): Add tracing message.
   1.327 +
   1.328 +2009-12-03  Werner Lemberg  <wl@gnu.org>
   1.329 +
   1.330 +	Fix compiler warnings.
   1.331 +
   1.332 +	* src/truetype/ttgload.c (tt_get_metrics): Put `Exit' label into the
   1.333 +	proper preprocessor conditional.
   1.334 +	* src/pfr/pfrobjs.c (pfr_slot_load): Pacify gcc.
   1.335 +
   1.336 +2009-11-25  John Tytgat  <John.Tytgat@esko.com>
   1.337 +
   1.338 +	Better handling of start of `eexec' section.
   1.339 +	This fixes Savannah bug #28090.
   1.340 +
   1.341 +	* src/type1/t1parse.c (T1_Get_Private_Dict): Skip all whitespace
   1.342 +	characters before start of `eexec' section.
   1.343 +
   1.344 +2009-11-20  Werner Lemberg  <wl@gnu.org>
   1.345 +
   1.346 +	Fix Savannah bug #27742.
   1.347 +
   1.348 +	* src/base/ftstroke.c (ft_stroker_outside): Avoid silent division by
   1.349 +	zero, using a threshold for `theta'.
   1.350 +
   1.351 +2009-11-20  Werner Lemberg  <wl@gnu.org>
   1.352 +
   1.353 +	Fix Savannah bug #28036.
   1.354 +
   1.355 +	* src/type1/t1afm.c (t1_get_index): Fix comparison.
   1.356 +
   1.357 +2009-11-16  Werner Lemberg  <wl@gnu.org>
   1.358 +
   1.359 +	Fix compiler warnings.
   1.360 +	Reported by Kevin Blenkinsopp <arqon@promode.org>.
   1.361 +
   1.362 +	* src/sfnt/ttload.c (check_table_dir): Use proper data type.
   1.363 +
   1.364 +2009-11-15  Werner Lemberg  <wl@gnu.org>
   1.365 +
   1.366 +	Really fix FreeDesktop bug #21197.
   1.367 +	This also fixes Savannah bug #28021.
   1.368 +
   1.369 +	* src/autofit/aflatin.c (af_latin_metrics_check_digits),
   1.370 +	src/autofit/aflatin2.c (af_latin2_metrics_check_digits): Fix loop.
   1.371 +
   1.372 +2009-11-15  Werner Lemberg  <wl@gnu.org>
   1.373 +
   1.374 +	Add tracing messages for advance values.
   1.375 +
   1.376 +	* src/base/ftobjs.c (FT_Load_Glyph), src/truetype/ttgload.c
   1.377 +	(TT_Get_HMetrics, TT_Get_VMetrics): Do it.
   1.378 +
   1.379 +2009-11-08  Werner Lemberg  <wl@gnu.org>
   1.380 +
   1.381 +	Fix compiler warning.
   1.382 +	Reported by Jeremy Manson <jeremy.manson@gmail.com>.
   1.383 +
   1.384 +	* src/truetype/ttgload.c (load_truetype_glyph): Initialize `error'.
   1.385 +
   1.386 +2009-11-04  Werner Lemberg  <wl@gnu.org>
   1.387 +
   1.388 +	Remove compiler warning.
   1.389 +	Reported by Sean McBride <sean@rogue-research.com>.
   1.390 +
   1.391 +	* src/tools/apinames.c (read_header_file)<STATE_TYPE>: Use a cast to
   1.392 +	`int', as specified in the printf(3) man page.
   1.393 +
   1.394 +2009-11-04  Werner Lemberg  <wl@gnu.org>
   1.395 +
   1.396 +	Fix Savannah bug #27921.
   1.397 +
   1.398 +	* src/cff/cffobjs.c (cff_face_init), src/cid/cidobjs.c
   1.399 +	(cid_face_init), src/type1/t1afm.c (T1_Read_Metrics),
   1.400 +	src/type1/t1objs.c (T1_Face_Init): Don't use unsigned constant
   1.401 +	values for rounding if the argument can be negative.
   1.402 +
   1.403 +2009-11-03  Bram Tassyns  <bramt@enfocus.be>
   1.404 +
   1.405 +	Add basic support for Type1 charstrings in CFF.
   1.406 +	This fixes Savannah bug #27922.
   1.407 +
   1.408 +	* src/cff/cffgload.c (CFF_Operator, cff_argument_counts): Handle
   1.409 +	`seac', `sbw', and `setcurrentpoint' opcodes.
   1.410 +	(cff_compute_bias): Add parameter to indicate the charstring type.
   1.411 +	Update all callers.
   1.412 +	(cff_operator_seac): Add parameter for side bearing.
   1.413 +	(cff_decoder_parse_charstrings): Updated for more Type1 support.
   1.414 +
   1.415 +2009-11-03  Werner Lemberg  <wl@gnu.org>
   1.416 +
   1.417 +	Return correct `linearHoriAdvance' value for embedded TT bitmaps too.
   1.418 +	Reported by Jeremy Manson <jeremy.manson@gmail.com>.
   1.419 +
   1.420 +	src/truetype/ttgload.c (load_truetype_glyph): Add parameter to
   1.421 +	quickly load the glyph header only.
   1.422 +	Update all callers.
   1.423 +	(tt_loader_init): Add parameter to quickly load the `glyf' table
   1.424 +	only.
   1.425 +	Update all callers.
   1.426 +	(TT_Load_Glyph): Compute linear advance values for embedded bitmap
   1.427 +	glyphs too.
   1.428 +
   1.429 +2009-11-03  Werner Lemberg  <wl@gnu.org>
   1.430 +
   1.431 +	Improve code readability.
   1.432 +
   1.433 +	* src/ttgload.c (load_truetype_glyph): Move metrics calculation
   1.434 +	to...
   1.435 +	(tt_get_metrics): This new function.
   1.436 +
   1.437 +2009-10-26  Bram Tassyns  <bramt@enfocus.be>
   1.438 +
   1.439 +	Fix Savannah bug #27811.
   1.440 +
   1.441 +	* src/truetype/ttxgvar.c (ft_var_readpackeddeltas): Fix
   1.442 +	signed/unsigned mismatch.
   1.443 +
   1.444 +2009-10-19  Ning Dong  <flintning@163.com>
   1.445 +
   1.446 +	Fix handling of `get' and `put' CFF instructions.
   1.447 +
   1.448 +	* src/cff/cffgload.c (cff_decoder_parse_charstrings) <cff_op_get,
   1.449 +	cff_op_put>: Appendix B of Adobe Technote #5177 limits the number of
   1.450 +	elements for the `get' and `put' operators to 32.
   1.451 +	* src/cff/cffgload.h (CFF_MAX_TRANS_ELEMENTS): Define.
   1.452 +	(CFF_Decoder): Use it for `buildchar' and remove `len_buildchar'.
   1.453 +
   1.454 +2009-10-18  Werner Lemberg  <wl@gnu.org>
   1.455 +
   1.456 +	Fix handling of `dup' CFF instruction.
   1.457 +	Problem and solution reported by Ning Dong <flintning@163.com>.
   1.458 +
   1.459 +	* src/cff/cffgload.c (cff_decoder_parse_charstrings) <cff_op_dup>:
   1.460 +	Increase `args' by 2, not 1.
   1.461 +
   1.462 +2009-10-10  Werner Lemberg  <wl@gnu.org>
   1.463 +
   1.464 +	* Version 2.3.11 released.
   1.465 +	==========================
   1.466 +
   1.467 +
   1.468 +	Tag sources with `VER-2-3-11'.
   1.469 +
   1.470 +	* docs/VERSION.DLL: Update documentation and bump version number to
   1.471 +	2.3.11.
   1.472 +
   1.473 +	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
   1.474 +	builds/win32/visualc/freetype.dsp,
   1.475 +	builds/win32/visualc/freetype.vcproj,
   1.476 +	builds/win32/visualce/index.html,
   1.477 +	builds/win32/visualce/freetype.dsp,
   1.478 +	builds/win32/visualce/freetype.vcproj: s/2.3.10/2.3.11/, s/2310/2311/.
   1.479 +
   1.480 +	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 11.
   1.481 +
   1.482 +	* builds/unix/configure.raw (version_info): Set to 9:22:3.
   1.483 +
   1.484 +2009-10-10  Werner Lemberg  <wl@gnu.org>
   1.485 +
   1.486 +	* docs/CHANGES, docs/release: Updated.
   1.487 +
   1.488 +2009-10-10  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.489 +
   1.490 +	* src/pcf/pcfread.c (pcf_get_properties): Fix a bug in the nprops
   1.491 +	truncation.  Reported by Martin von Gagern and Peter Volkov.
   1.492 +	https://bugs.gentoo.org/288357 and https://bugs.gentoo.org/288256
   1.493 +
   1.494 +2009-10-06  Werner Lemberg  <wl@gnu.org>
   1.495 +
   1.496 +	* Version 2.3.10 released.
   1.497 +	==========================
   1.498 +
   1.499 +
   1.500 +	Tag sources with `VER-2-3-10'.
   1.501 +
   1.502 +	* builds/toplevel.mk (major, minor, patch): Fix regexp to allow more
   1.503 +	than a single digit.
   1.504 +	(dist): We now use git.
   1.505 +
   1.506 +	* docs/VERSION.DLL: Update documentation and bump version number to
   1.507 +	2.3.10.
   1.508 +
   1.509 +	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
   1.510 +	builds/win32/visualc/freetype.dsp,
   1.511 +	builds/win32/visualc/freetype.vcproj,
   1.512 +	builds/win32/visualce/index.html,
   1.513 +	builds/win32/visualce/freetype.dsp,
   1.514 +	builds/win32/visualce/freetype.vcproj: s/2.3.9/2.3.10/, s/239/2310/.
   1.515 +
   1.516 +	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 10.
   1.517 +
   1.518 +	* builds/unix/configure.raw (version_info): Set to 9:21:3.
   1.519 +
   1.520 +2009-10-06  Werner Lemberg  <wl@gnu.org>
   1.521 +
   1.522 +	Fix `make multi'.
   1.523 +
   1.524 +	* src/cache/ftccache.c, src/cache/ftcsbits.c (FT_COMPONENT): Define.
   1.525 +
   1.526 +	* src/sfnt/sfdriver.c: Include FT_INTERNAL_DEBUG_H.
   1.527 +
   1.528 +2009-09-27  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.529 +
   1.530 +	[cache] Fix Savannah bug #27441, clean up Redhat bugzilla #513582.
   1.531 +	Tricky casts in FTC_{CACHE,GCACHE,MRULIST}_LOOKUP_CMP() are removed.
   1.532 +	Now these functions should be called with FTC_Node or FTC_MruNode
   1.533 +	variable, and the caller should cast them to appropriate pointers to
   1.534 +	concrete data.  These tricky casts can GCC-4.4 optimizer (-O2)
   1.535 +	confused and the crashing binaries are generated.
   1.536 +
   1.537 +	* src/cache/ftcmru.h (FTC_MRULIST_LOOKUP_CMP): Drop tricky cast.
   1.538 +	Now the 4th argument `node' of this function should be typed as
   1.539 +	FTC_MruNode.
   1.540 +
   1.541 +	* src/cache/ftcglyph.h (FTC_GCACHE_LOOKUP_CMP): For inline
   1.542 +	implementation, new temporal variable FTC_MruNode `_mrunode' to take
   1.543 +	the pointer from FTC_MRULIST_LOOKUP_CMP().  For non-inline
   1.544 +	implementation, tricky cast is dropped.
   1.545 +
   1.546 +	* src/cache/ftcmanag.c (FTC_SIZE_NODE): New macro casting
   1.547 +	to FTC_SizeNode.
   1.548 +	(FTC_Manager_LookupSize): Replace FTC_SizeNode `node' by FTC_MruNode
   1.549 +	`mrunode', and FTC_SIZE_NODE() is inserted.
   1.550 +	(FTC_FACE_NODE): New macro casting to FTC_FaceNode.
   1.551 +	(FTC_Manager_LookupFace) Replace FTC_FaceNode `node' by FTC_MruNode
   1.552 +	`mrunode', and FTC_FACE_NODE() is inserted.
   1.553 +
   1.554 +	* src/cache/ftcbasic.c (FTC_ImageCache_Lookup): Change the type of
   1.555 +	`node' from FTC_INode to FTC_Node.  Extra casting macro FTC_NODE()
   1.556 +	is dropped.
   1.557 +	(FTC_ImageCache_LookupScaler): Ditto.
   1.558 +	(FTC_SBitCache_Lookup): Change the type of `node' from FTC_SNode to
   1.559 +	FTC_Node.  Extra casting macro FTC_NODE() is dropped.  FTC_SNODE()
   1.560 +	is inserted.
   1.561 +	(FTC_SBitCache_LookupScaler): Ditto.
   1.562 +
   1.563 +	* src/cache/ftccmap.c (FTC_CMapCache_Lookup): Change the type of
   1.564 +	`node' from FTC_CMapNode to FTC_Node.  Extra casting macro
   1.565 +	FTC_NODE() is dropped, FTC_CMAP_NODE() is inserted.
   1.566 +
   1.567 +2009-09-25  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.568 +
   1.569 +	[cache, psaux, type1] Fix for multi build.
   1.570 +	In multi build, some cpp functions are left as unresolved symbols.
   1.571 +
   1.572 +	* src/cache/ftcbasic.c: Include FT_INTERNAL_DEBUG_H for FT_TRACE1().
   1.573 +
   1.574 +	* src/psaux/t1decode.c: Include FT_INTERNAL_CALC_H for
   1.575 +	FIXED_TO_INT().
   1.576 +	* src/type1/t1gload.c: Ditto.
   1.577 +	* src/type1/t1objs.c: Ditto.
   1.578 +
   1.579 +2009-09-25  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.580 +
   1.581 +	[autofit] Fix for multi build.
   1.582 +
   1.583 +	* src/autofit/afmodule.h: Include FT_INTERNAL_OBJECTS_H to use
   1.584 +	FT_DECLARE_MODULE() macro in multi build.
   1.585 +
   1.586 +	* src/autofit/aflatin.c: Include <ft2build.h> to handle
   1.587 +	FT_ADVANCES_H correctly in multi build.
   1.588 +
   1.589 +2009-09-24  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.590 +
   1.591 +	[cache] Check the face filled by FTC_Manager_LookupFace().
   1.592 +
   1.593 +	* src/cache/ftcbasic.c (ftc_basic_family_get_count): Return
   1.594 +	immediately if FTC_Manager_LookupFace() fills face by NULL.  Such
   1.595 +	case can occur when the code is optimized by GCC-4.2.x.
   1.596 +
   1.597 +2009-09-23  Werner Lemberg  <wl@gnu.org>
   1.598 +
   1.599 +	* docs/CHANGES: Updated.
   1.600 +
   1.601 +2009-09-12  Werner Lemberg  <wl@gnu.org>
   1.602 +
   1.603 +	[raster] Fix 5-levels grayscale output.
   1.604 +	This was broken since version 2.3.0.
   1.605 +
   1.606 +	* src/raster/ftraster.c (count_table): Use pre-2.3.0 values (which
   1.607 +	were then computed dynamically).
   1.608 +	(Vertical_Gray_Sweep_Step): Updated.
   1.609 +
   1.610 +	(ft_black_render): Initialize `worker->gray_lines' (problem found by
   1.611 +	valgrind).
   1.612 +
   1.613 +	(FT_RASTER_OPTION_ANTI_ALIASING, DEBUG_RASTER): Dont' #undef, just
   1.614 +	comment out.
   1.615 +
   1.616 +2009-09-12  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.617 +
   1.618 +	Improve configure.raw for cross build.
   1.619 +
   1.620 +	* builds/unix/configure.raw: Remove temporal files created by the
   1.621 +	suffix checking for CC_BUILD.  Set XX_ANSIFLAGS and XX_CFLAGS when
   1.622 +	cross compiler is GCC.  AC_PROG_CC checks whether the cross compiler
   1.623 +	is GCC, its result is stored in GCC.
   1.624 +
   1.625 +2009-09-12  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.626 +
   1.627 +	[BDF] Modify hash API to take size_t value instead of void *.
   1.628 +
   1.629 +	The hash API in BDF driver is designed to be generic, it takes
   1.630 +	void * typed data.  But BDF driver always gives an unsigned long
   1.631 +	integer (the index to a property).  To reduce non-essential
   1.632 +	casts from unsigned long to void* and from void* to unsigned
   1.633 +	long, the hash API is changed to take size_t integer.
   1.634 +	The issue of incompatible cast between unsigned long and void*
   1.635 +	on LLP64 platform is reported by NightStrike from MinGW-Win64
   1.636 +	project.  See
   1.637 +	http://lists.gnu.org/archive/html/freetype/2009-09/msg00000.html
   1.638 +
   1.639 +	* src/bdf/bdf.h: The type of hashnode->data is changed from
   1.640 +	void* to size_t.
   1.641 +
   1.642 +	* src/bdf/bdflib.c (hash_insert): Get size_t data, instead of
   1.643 +	void* data.
   1.644 +	(bdf_create_property): Get the name length of new property by
   1.645 +	size_t variable, with a cut-off at FT_ULONG_MAX.
   1.646 +	(_bdf_set_default_spacing): Get the name length of the face by
   1.647 +	size_t variable, with a cut-off at 256.
   1.648 +	(bdf_get_property): Get the property id by size_t variable to
   1.649 +	reduce the casts between 32-bit prop ID & hashnode->data during
   1.650 +	simple copying.
   1.651 +	(_bdf_add_property): Ditto.
   1.652 +	(_bdf_parse_start): Calculate the index to the property array
   1.653 +	by size_t variable.
   1.654 +	(bdf_get_font_property): Drop a cast to unsigned long.
   1.655 +
   1.656 +2009-09-10  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.657 +
   1.658 +	[Win64] Improve the computation of random seed from stack address.
   1.659 +
   1.660 +	On LLP64 platform, the conversion from pointer to FT_Fixed need
   1.661 +	to drop higher 32-bit.  Explict casts are required. Reported by
   1.662 +	NightStrike from MinGW-w64 project.  See
   1.663 +	http://lists.gnu.org/archive/html/freetype/2009-09/msg00000.html
   1.664 +
   1.665 +	* src/cff/cffgload.c: Convert the pointers to FT_Fixed explicitly.
   1.666 +
   1.667 +	* src/psaux/t1decode.c: Ditto.
   1.668 +
   1.669 +
   1.670 +2009-09-03  Werner Lemberg  <wl@gnu.org>
   1.671 +
   1.672 +	[raster] Improvements for stand-alone mode.
   1.673 +
   1.674 +	* src/raster/rules.mk: Don't handle ftmisc.h.  It is needed for
   1.675 +	stand-alone mode only.
   1.676 +
   1.677 +	* src/raster/ftmisc.h (FT_MemoryRec , FT_Alloc_Func, FT_Free_Func,
   1.678 +	FT_Realloc_Func): Copy declarations from ftsystem.h.
   1.679 +
   1.680 +2009-09-02  Bram Tassyns  <bramt@enfocus.be>
   1.681 +
   1.682 +	Improve vertical metrics calculation (Savannah bug #27364).
   1.683 +
   1.684 +	The calculation of `vertBearingX' is not defined in the OTF font
   1.685 +	spec so FreeType does a `best effort' attempt.  However, this value
   1.686 +	is defined in the PDF and PostScript specs, and that algorithm is
   1.687 +	better than the one FreeType currently uses:
   1.688 +
   1.689 +	  FreeType: Use the middle of the bounding box as the X coordinate
   1.690 +	            of the vertical origin.
   1.691 +
   1.692 +	  Adobe PDF spec: Use the middle of the horizontal advance vector as
   1.693 +	                  the X coordinate of the vertical origin.
   1.694 +
   1.695 +	FreeType's algorithm goes wrong if you have a really small glyph
   1.696 +	(like the full-width, circle-like dot at the end of the sentence, as
   1.697 +	used in CJK scripts) with large bearings.  With the FreeType
   1.698 +	algorithm this dot gets centered on the baseline; with the PDF
   1.699 +	algorithm it gets the correct location (in the top right).  Note
   1.700 +	that this is a serious issue, it's like printing the dot at the end
   1.701 +	of a Roman sentence at the center of the textline instead of on the
   1.702 +	baseline like it should. So i believe the PDF spec's algorithm
   1.703 +	should be used in FreeType as well.
   1.704 +
   1.705 +	The `vertBearingY' value for such small glyphs is also very strange
   1.706 +	if no `vmtx' information is present, since the height of the bbox is
   1.707 +	not representable for the height of the glyph visually (the
   1.708 +	whitespace up to the baseline is part of the glyph).  The fix also
   1.709 +	includes some code for a better estimate of `vertBearingY'.
   1.710 +
   1.711 +	* src/base/ftobjs.c (ft_synthesize_vertical_metrics): `vertBearingX'
   1.712 +	is now calculated as described by the Adobe PDF Spec.  Estimate for
   1.713 +	`vertBearingY' now works better for small glyphs completely above or
   1.714 +	below the baseline into account.
   1.715 +
   1.716 +	* src/cff/cffgload.c (cff_slot_load): `vertBearingX' is now
   1.717 +	calculated as described by the Adobe PDF Spec.  Vertical metrics
   1.718 +	information was always ignored when FT_CONFIG_OPTION_OLD_INTERNALS
   1.719 +	was not defined.
   1.720 +
   1.721 +	* src/truetype/ttgload.c (compute_glyph_metrics): `vertBearingX' is
   1.722 +	now calculated as described by the Adobe PDF Spec.
   1.723 +
   1.724 +2009-09-01  John Tytgat  <John.Tytgat@esko.com>
   1.725 +
   1.726 +	Fix custom cmap for empty Type 1 font (Savannah bug #27294).
   1.727 +
   1.728 +	* include/freetype/internal/t1types.h (T1_EncodingRecRec_): Update
   1.729 +	comment to reflect revised code_last meaning.
   1.730 +	* src/type1/t1load.c (T1_Open_Face), src/type42/t42objs.c
   1.731 +	(T42_Open_Face): Assign max_char as highest character code + 1 and
   1.732 +	use this for T1_EncodingRecRec_::code_last.
   1.733 +	* src/psaux/t1cmap.c (t1_cmap_custom_init): Follow revised
   1.734 +	T1_EncodingRecRec_::code_last meaning.
   1.735 +
   1.736 +2009-08-25  Werner Lemberg  <wl@gnu.org>
   1.737 +
   1.738 +	Fix rendering of horizontally compressed CFFs.
   1.739 +	Bug reported by Ivan Nincic <inincic@pdftron.com>.
   1.740 +
   1.741 +	* src/cff/cffgload.c (cff_slot_load): Thinko: Check `xx' element of
   1.742 +	`font_matrix' also.
   1.743 +
   1.744 +	* docs/CHANGES: Updated.
   1.745 +
   1.746 +2009-08-03  suyu0925@gmail.com
   1.747 +
   1.748 +	Don't call `ft_fseek' every time when executing `ft_fread'.
   1.749 +
   1.750 +	* src/base/ftstream.c (FT_Stream_Seek), src/base/ftsystem.c
   1.751 +	(ft_ansi_stream_io): Implement it.
   1.752 +
   1.753 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.754 +
   1.755 +	sfnt: Cast a charcode to 32-bit in cmap format 14 parser.
   1.756 +	
   1.757 +	* src/sfnt/ttcmap.c (tt_cmap14_char_var_index,
   1.758 +	tt_cmap14_char_var_isdefault, tt_cmap14_char_variants,
   1.759 +	tt_cmap14_variant_chars): Correct mismatches from
   1.760 +	FT_CMap_CharVarIndexFunc prototype, FT_ULong arguments
   1.761 +	are replaced by FT_UInt32 arguments.
   1.762 +
   1.763 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.764 +
   1.765 +	sfnt: Cast a charcode to 32-bit in cmap format 12 parser.
   1.766 +
   1.767 +	* src/sfnt/ttcmap.c (tt_cmap12_char_next):
   1.768 +	Insert explicit cast from FT_UFast to FT_UInt32
   1.769 +	for return value.
   1.770 +
   1.771 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.772 +
   1.773 +	psaux: Fix a few casts to FT_Int32 value.
   1.774 +
   1.775 +	* src/psaux/t1decode.c (t1_decoder_parse_charstrings):
   1.776 +	Fix a few casts setting `value' from FT_Long to FT_Int32,
   1.777 +	because `value' is typed as FT_Int32 since 2009-06-22.
   1.778 +
   1.779 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.780 +
   1.781 +	sfnt: Fix a data type mismatching with its source.
   1.782 +
   1.783 +	* src/sfnt/ttcmap.c (tt_cmap13_char_next): Fix the
   1.784 +	type of `gindex' from FT_ULong to FT_UInt because
   1.785 +	it is set by FT_UInt tt_cmap13_char_map_binary() or
   1.786 +	TT_CMap13->cur_gindex.
   1.787 +
   1.788 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.789 +
   1.790 +	sfnt: Extend a few local variables to load 32-bit values.
   1.791 +
   1.792 +	* src/sfnt/ttkern.c (tt_face_load_kern): Extend `count'
   1.793 +	and `kern' to load 32-bit values.
   1.794 +
   1.795 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.796 +
   1.797 +	pfr: Extend `num_aux' to take 32-bit value.
   1.798 +
   1.799 +	* src/pfr/pfrload.c (pfr_phy_font_load): Extend
   1.800 +	`num_aux' to load 32-bit value.
   1.801 +
   1.802 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.803 +
   1.804 +	pcf: Truncate FT_ULong `nprops' to fit to int PCF_Face->nprops.
   1.805 +
   1.806 +	* src/pcf/pcfread.c (pcf_get_properties): Load `nprops'
   1.807 +	as FT_ULong value from PCF file, but truncate it as
   1.808 +	int to fit PCF_Face->nprops.  The number of truncated
   1.809 +	properties is shown in the trace message.
   1.810 +
   1.811 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.812 +
   1.813 +	gxvalid: Extend a few local variables to reduce the casts.
   1.814 +
   1.815 +	* src/gxvalid/gxvmorx.c (gxv_morx_subtables_validate):
   1.816 +	Extend `type' and `rest' to take FT_ULong values.
   1.817 +
   1.818 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.819 +
   1.820 +	gxvalid: Extend `settingTable' to take 32-bit offset.
   1.821 +
   1.822 +	* src/gxvalid/gxvfeat.c (gxv_feat_name_validate):
   1.823 +	Extend `settingTable' to take 32-bit offset.
   1.824 +
   1.825 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.826 +
   1.827 +	autofit: Cast FT_Long glyph_count to compare with FT_UInt GID.
   1.828 +
   1.829 +	* src/autofit/afglobal.c (af_face_globals_is_digit,
   1.830 +	af_face_globals_compute_script_coverage): Cast FT_Long
   1.831 +	globals->glyph_count to FT_ULong, to compare with FT_UInt
   1.832 +	gindex.
   1.833 +
   1.834 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.835 +
   1.836 +	smooth: Exclude 16-bit system in invalid pitch/height check.
   1.837 +
   1.838 +	* src/smooth/ftsmooth.c (ft_smooth_render_generic):
   1.839 +	pitch and height are typed as FT_UInt but checked to fit
   1.840 +	16-bit range, to avoid the overflows.  On 16-bit system,
   1.841 +	this checking inserts a conditional that never occurs.
   1.842 +
   1.843 +2009-07-03  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.844 +
   1.845 +	cff: Type large constants > 0x7FFF as long for 16-bit systems.
   1.846 +
   1.847 +	* src/cff/cffload.c (cff_charset_load): Type large
   1.848 +	constants > 0x7FFF as long, because normal constants
   1.849 +	are typed signed integer that is less than 0x8000 on
   1.850 +	16-bit systems.
   1.851 +
   1.852 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.853 +
   1.854 +	base: Remove an unused variable.
   1.855 +
   1.856 +	* src/base/ftglyph.c (FT_Glyph_To_Bitmap): Remove an
   1.857 +	unused variable `library'.  glyph->library is used.
   1.858 +
   1.859 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.860 +
   1.861 +	cache: Check higher bits in flags for non ILP32 systems.
   1.862 +
   1.863 +	4 public functions ought to take FT_ULong flags, but take
   1.864 +	FT_UInt flags. To keep binary compatibility, we drop higher
   1.865 +	bits on non ILP32 platforms,
   1.866 +		ILP64 systems: No drop occurs.
   1.867 +		LP64 systems: Higher bits are not used.
   1.868 +		16-bit systems: Drop can occur.
   1.869 +	See
   1.870 +	http://lists.gnu.org/archive/html/freetype-devel/2008-12/msg00065.html
   1.871 +	These functions will be refined to take FT_ULong flags in
   1.872 +	next bump with incompatible API change.
   1.873 +
   1.874 +	* src/cache/ftcbasic.c (FTC_ImageCache_Lookup):
   1.875 +	Check `flags' in `type', the 2nd argument.
   1.876 +	(FTC_SBitCache_Lookup): Ditto.
   1.877 +	(FTC_ImageCache_LookupScaler): Check `load_flags',
   1.878 +	the 3rd argument.
   1.879 +	(FTC_SBitCache_LookupScaler): Ditto.
   1.880 +
   1.881 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.882 +
   1.883 +	sfnt: Ignore invalid GIDs in glyph name lookup.
   1.884 +
   1.885 +	* include/freetype/internal/fttrace.h:
   1.886 +	New trace module for sfdriver.c is added.
   1.887 +
   1.888 +	* src/sfnt/sfdriver.c (sfnt_get_name_index):
   1.889 +	Restrict glyph name lookup to FT_UInt GID.
   1.890 +	Genuine TrueType can hold 16-bit glyphs.
   1.891 +
   1.892 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.893 +
   1.894 +	pcf: Fix a comparison between FT_Long and FT_ULong.
   1.895 +
   1.896 +	* src/pcf/pcfread.c (pcf_get_bitmaps): Return an error
   1.897 +	if PCF_Face->nemetrics is negative.
   1.898 +
   1.899 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.900 +
   1.901 +	gxvalid: Guarantee `nFeatureFlags' size up to 32-bit.
   1.902 +
   1.903 +	* src/gxvalid/gxvmort.c (gxv_mort_featurearray_validate):
   1.904 +	Extend the 3rd argument `nFeatureFlags' to FT_ULong.
   1.905 +	* src/gxvalid/gxvmort.h: Ditto.
   1.906 +
   1.907 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.908 +
   1.909 +	sfnt: Insert explicit cast for LP64 system.
   1.910 +
   1.911 +	* src/sfnt/ttkern.c (tt_face_load_kern): Insert
   1.912 +	cast from unsigned long to FT_UInt32.
   1.913 +
   1.914 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.915 +
   1.916 +	gxvalid: Guarantee `just' table size upto 32-bit.
   1.917 +
   1.918 +	* src/gxvalid/gxvjust.c (gxv_just_validate):
   1.919 +	The type of `offset' is changed from FT_UInt to
   1.920 +	FT_Offset, for 16-bit platforms.
   1.921 +
   1.922 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.923 +
   1.924 +	gxvalid: Guarantee `trak' table size upto 32-bit.
   1.925 +
   1.926 +	* src/gxvalid/gxvtrak.c (gxv_trak_validate):
   1.927 +	The type of `offset' is changed from FT_UInt to
   1.928 +	FT_Offset, for 16-bit platforms.
   1.929 +
   1.930 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.931 +
   1.932 +	type1: Fix a data type mismatching with its source.
   1.933 +
   1.934 +	* include/freetype/internal/t1types.h: The type of
   1.935 +	T1_Face->buildchar is matched with T1_Decorder->top.
   1.936 +
   1.937 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.938 +
   1.939 +	pfr: Fix a data type mismatching with its source.
   1.940 +
   1.941 +	* src/pfr/pfrtypes.h: The type of PFR_KernItem->offset
   1.942 +	is extended from FT_UInt32 to FT_Offset, because it is
   1.943 +	calculated with the pointer difference, in
   1.944 +	pfr_extra_item_load_kerning_pairs().
   1.945 +
   1.946 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.947 +
   1.948 +	pfr: Fix a data type mismatching with its source.
   1.949 +
   1.950 +	* src/pfr/pfrtypes.h: The type of PFR_PhysFont->chars_offset
   1.951 +	is extended from FT_UInt32 to FT_Offset, because it is
   1.952 +	calculated with the pointer difference in pfr_phy_font_load().
   1.953 +
   1.954 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.955 +
   1.956 +	pfr: Fix a data type mismatching with its source.
   1.957 +
   1.958 +	* src/pfr/pfrtypes.h: The type of PFR_PhyFont->bct_offset
   1.959 +	is extended from FT_UInt32 to FT_Long, because it is
   1.960 +	loaded by FT_STREAM_POS() in pfr_phy_font_load().
   1.961 +
   1.962 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.963 +
   1.964 +	smooth: Improve the format in debug message.
   1.965 +
   1.966 +	* src/smooth/ftgrays.c (gray_dump_cells): Improve the
   1.967 +	format specifications to dump variables.
   1.968 +
   1.969 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.970 +
   1.971 +	sfnt: Fix a data type mismatching with its source.
   1.972 +
   1.973 +	* src/sfnt/sfobjs.c (sfnt_load_face): The type of
   1.974 +	local `flags' is matched with FT_Face->face_flags.
   1.975 +
   1.976 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.977 +
   1.978 +	psaux: Fix a data type mismatching with its source.
   1.979 +
   1.980 +	* include/freetype/internal/psaux.h: The type of
   1.981 +	T1_DecorderRec.buildchar is matched with
   1.982 +	T1_DecorderRec.top.
   1.983 +
   1.984 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.985 +
   1.986 +	truetype: Extend TrueType GX packed deltas to FT_Offset.
   1.987 +
   1.988 +	* src/truetype/ttgxvar.c (ft_var_readpackeddeltas):
   1.989 +	The type of 2nd argument `delta_cnt' is changed from
   1.990 +	FT_Int to FT_Offset, because its source can be cvt
   1.991 +	table size calculated from stream position.
   1.992 +
   1.993 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
   1.994 +
   1.995 +	truetype: Extend mmvar_len to hold size_t values.
   1.996 +
   1.997 +	* src/truetype/ttgxvar.h: The type of
   1.998 +	GX_BlendRec.mmvar_len is changed from FT_Int to
   1.999 +	FT_Offset, because TT_Get_MM_Var() calculates it
  1.1000 +	by sizeof() results.
  1.1001 +
  1.1002 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1003 +
  1.1004 +	truetype: Check invalid function number in IDEF instruction.
  1.1005 +
  1.1006 +	* src/truetype/ttinterp.c (Ins_IDEF): Check
  1.1007 +	if the operand fits to 8-bit opcode limitation.
  1.1008 +
  1.1009 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1010 +
  1.1011 +	truetype: Check invalid function number in FDEF instruction.
  1.1012 +
  1.1013 +	* src/truetype/ttinterp.c (Ins_FDEF): Check
  1.1014 +	if the operand fits 16-bit function number.
  1.1015 +
  1.1016 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1017 +
  1.1018 +	truetype: Truncate the deltas of composite glyph at 16-bit values.
  1.1019 +
  1.1020 +	* src/truetype/ttgload.c (load_truetype_glyph):
  1.1021 +	Insert cast from FT_Long (deltas[i].{x,y}) to
  1.1022 +	FT_Int16 in the summation of deltas[] for composite
  1.1023 +	glyphs.  Because deltas[i] is typed as FT_Pos,
  1.1024 +	its component x, y are typed as FT_Long, but
  1.1025 +	their sources are always FT_Int16 when they are
  1.1026 +	loaded by ft_var_readpackeddeltas().  However,
  1.1027 +	the limitation about the summed deltas is unclear.
  1.1028 +
  1.1029 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1030 +
  1.1031 +	truetype: Truncate the instructions upto 16-bit per a glyph.
  1.1032 +
  1.1033 +	* src/truetype/ttgload.c (TT_Hint_Glyph): Truncate
  1.1034 +	the instructions upto 16-bit length per a glyph.
  1.1035 +
  1.1036 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1037 +
  1.1038 +	truetype: Cast the numerical operands to 32-bit for LP64 systems.
  1.1039 +
  1.1040 +	* src/truetype/ttinterp.c (Ins_SPHIX, INS_MIAP,
  1.1041 +	Ins_MIRP): Insert cast from long (args[], the
  1.1042 +	operands passed to TrueType operator) to FT_Int32
  1.1043 +	(the argument of TT_MulFix14()).
  1.1044 +
  1.1045 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1046 +
  1.1047 +	truetype: Cast the project vector to 32-bit for LP64 system.
  1.1048 +
  1.1049 +	* src/truetype/ttinterp.c (Project, DualProject):
  1.1050 +	Insert casts from FT_Pos (the arguments `dx', `dy')
  1.1051 +	to FT_UInt32 (the argument to TT_DotFix14()).
  1.1052 +
  1.1053 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1054 +
  1.1055 +	truetype: Cast the scaling params to 32-bit for LP64 system.
  1.1056 +
  1.1057 +	* src/truetype/ttgload.c (TT_Process_Composite_Component):
  1.1058 +	Insert casts from long (return value of FT_MulFix()) to
  1.1059 +	FT_Int32 (the argument to FT_SqrtFixed()).
  1.1060 +
  1.1061 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1062 +
  1.1063 +	sfnt: Cast a character code to FT_UInt32 for LP64 system.
  1.1064 +
  1.1065 +	* src/sfnt/ttcmap.c (tt_cmap14_char_map_nondef_binary,
  1.1066 +	tt_cmap14_variants, tt_cmap14_char_variants,
  1.1067 +	tt_cmap14_def_char_count, tt_cmap14_get_def_chars,
  1.1068 +	tt_cmap14_get_nondef_chars, tt_cmap14_variant_chars)
  1.1069 +	Insert casts when FT_UInt32 variable is loaded by
  1.1070 +	TT_NEXT_{UINT24|ULONG}.  Because most of them are
  1.1071 +	compared with FT_UInt32 values in public API, replacing
  1.1072 +	FT_UFast is not recommended.
  1.1073 +
  1.1074 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1075 +
  1.1076 +	sfnt: Cast a character code to FT_UInt32 for LP64 system.
  1.1077 +
  1.1078 +	* src/sfnt/ttcmap.c (tt_cmap4_init, tt_cmap4_next):
  1.1079 +	Insert the casts from unsigned long constant to
  1.1080 +	FT_UInt32.
  1.1081 +
  1.1082 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1083 +
  1.1084 +	sfnt: Extend TT_BDF->strings_size to FT_ULong for huge BDF.
  1.1085 +
  1.1086 +	* include/freetype/internal/tttypes.h: The type
  1.1087 +	of TT_BDF->string_size is extended from FT_UInt32
  1.1088 +	to FT_ULong, because BDF specification does not
  1.1089 +	restrict the length of string.
  1.1090 +	* src/sfnt/ttbdf.c: The scratch variable `strings'
  1.1091 +	to load TT_BDF->string_size is matched with
  1.1092 +	TT_BDF->string_size.
  1.1093 +
  1.1094 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1095 +
  1.1096 +	psaux: Handle the string length by FT_Offset variables.
  1.1097 +
  1.1098 +	* src/psaux/afmparse.c (afm_parser_next_key,
  1.1099 +	afm_tokenize, afm_parse_track_kern,
  1.1100 +	afm_parse_kern_pairs, afm_parse_kern_data,
  1.1101 +	afm_parser_skip_section, afm_parser_parse):
  1.1102 +	The length of key is handled by FT_Offset,
  1.1103 +	instead of FT_UInt.  Although the length of
  1.1104 +	PostScript strings or name object is 16-bit,
  1.1105 +	AFM_STREAM_KEY_LEN() calculates the length
  1.1106 +	from the pointer difference.
  1.1107 +
  1.1108 +	* src/psaux/afmparse.h (afm_parser_next_key):
  1.1109 +	Ditto.
  1.1110 +
  1.1111 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1112 +
  1.1113 +	pcf: Fix some data types mismatching with their sources.
  1.1114 +
  1.1115 +	* src/pcf/pcfread.c (pcf_get_bitmaps): The types
  1.1116 +	of `nbitmaps', `i', `sizebitmaps' are matched with
  1.1117 +	the type of area FT_Bitmap.pitch * FT_Bitmap.rows.
  1.1118 +
  1.1119 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1120 +
  1.1121 +	pcf: Handle the string length by size_t variables.
  1.1122 +
  1.1123 +	* src/pcf/pcfread.c (pcf_interpret_style): The types
  1.1124 +	of nn, len, lengths[4] are changed to size_t, because
  1.1125 +	they are loaded by (or compared with) ft_strlen().
  1.1126 +
  1.1127 +	* src/pcf/pcfutil.c (BitOrderInvert, TwoByteSwap,
  1.1128 +	FourByteSwap): The type of the 2nd argument `nbytes'
  1.1129 +	is changed to size_t, for similarity with ANSI C
  1.1130 +	string functions.
  1.1131 +
  1.1132 +	* src/pcf/pcfdrivr.c (PCF_Glyph_Load): The type of
  1.1133 +	`bytes' is changed to FT_Offset, because it is passed
  1.1134 +	to FT_ALLOC(), via ft_glyphslot_alloc_bitmap().  At
  1.1135 +	least, using unsigned type is better.
  1.1136 +
  1.1137 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1138 +
  1.1139 +	pcf: Fix some data types mismatching with their sources.
  1.1140 +
  1.1141 +	* src/pcf/pcfread.c (pcf_seek_to_table_type,
  1.1142 +	pcf_has_table_type): The type of 3rd argument
  1.1143 +	`ntables' is matched with PCF_Toc->count.
  1.1144 +
  1.1145 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1146 +
  1.1147 +	otvalid: Truncate the glyph index to 16-bit.
  1.1148 +
  1.1149 +	* src/otvalid/otvalid.c (otv_validate): Checks
  1.1150 +	face->num_glyphs does not exceed 16-bit limit,
  1.1151 +	pass FT_UInt num_glyphs to backend functions
  1.1152 +	otv_{GPOS|GSUB|GDEF|JSTF|MATH}_validate().
  1.1153 +
  1.1154 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1155 +
  1.1156 +	cache: Insert explict casts for LP64 systems.
  1.1157 +
  1.1158 +	* src/cache/ftcbasic.c (FTC_ImageCache_Lookup,
  1.1159 +	FTC_SBitCache_Lookup): The type of FTC_ImageType->width
  1.1160 +	is FT_Int, so the cast to unsigned larger type FT_ULong
  1.1161 +	is introduced for the comparisons with 0x10000L for
  1.1162 +	LP64 platform.
  1.1163 +
  1.1164 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1165 +
  1.1166 +	cache: Fix some data types mismatching with their sources.
  1.1167 +
  1.1168 +	* src/cache/ftccache.h: The type of return value
  1.1169 +	by FTC_Node_WeightFunc function is changed to
  1.1170 +	FT_Offset.  The type of FTC_CacheClass->cache_size
  1.1171 +	is changed to FT_Offset, too.
  1.1172 +
  1.1173 +	* src/cache/ftccback.h (ft_inode_weight,
  1.1174 +	ftc_snode_weight): Ditto.
  1.1175 +
  1.1176 +	* src/cache/ftccmap.c (ftc_cmap_node_weight): Ditto.
  1.1177 +
  1.1178 +	* src/cache/ftcimage.c (ftc_inode_weight,
  1.1179 +	FTC_INode_Weight): Ditto.
  1.1180 +
  1.1181 +	* src/cache/ftcsbits.c (ftc_snode_weight,
  1.1182 +	FTC_SNode_Weight): Ditto.
  1.1183 +
  1.1184 +	* src/cache/ftcmru.h: The type of
  1.1185 +	FTC_MruListClass->node_size is changed to FT_Offset,
  1.1186 +	because it is passed to FT_ALLOC() to specify the
  1.1187 +	size of buffer.
  1.1188 +
  1.1189 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1190 +
  1.1191 +	XXX_cmap_encoding_char_next() return FT_UInt32 values.
  1.1192 +
  1.1193 +	* include/freetype/internal/services/svpscmap.h:
  1.1194 +	The size of the charcode value returned by
  1.1195 +	the function typed PS_Unicodes_CharNextFunc is
  1.1196 +	matched with its input charcode value.
  1.1197 +
  1.1198 +	* src/cff/cffmap.c (cff_cmap_encoding_char_next,
  1.1199 +	cff_cmap_unicode_char_next): Ditto.
  1.1200 +
  1.1201 +	* src/pfr/pfrmap.c (pfr_cmap_encoding_char_next):
  1.1202 +	Ditto.
  1.1203 +
  1.1204 +	* src/psaux/t1cmap.c (t1_cmap_std_char_next,
  1.1205 +	t1_cmap_custom_char_next, t1_cmap_unicode_char_next):
  1.1206 +	Ditto.
  1.1207 +
  1.1208 +	* src/psnames/psmodule.c (ps_unicodes_char_next):
  1.1209 +	Ditto.
  1.1210 +
  1.1211 +	* src/winfonts/winfnt.c (fnt_cmap_char_next):
  1.1212 +	Ditto.
  1.1213 +
  1.1214 +	* src/sfnt/ttcmap.c (tt_cmap0_char_next,
  1.1215 +	tt_cmap2_char_next, tt_cmap4_char_next,
  1.1216 +	tt_cmap6_char_next, tt_cmap10_char_next,
  1.1217 +	tt_cmap12_char_next, tt_cmap13_char_next): Ditto.
  1.1218 +	(tt_cmap14_char_variants): Handle base unicode
  1.1219 +	codepoint by FT_UInt32 variable to avoid overflow
  1.1220 +	on 16-bit platforms.
  1.1221 +	(tt_cmap14_ensure): The type of `num_results' is
  1.1222 +	extend to FT_UInt32, to cover unsigned 32-bit
  1.1223 +	`numVarSelectorRecords' in cmap14 table header.
  1.1224 +
  1.1225 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1226 +
  1.1227 +	truetype: Extend TT_Face->num_locations for broken TTFs.
  1.1228 +
  1.1229 +	* include/freetype/internal/tttypes.h:
  1.1230 +	TT_Face->num_locations are extended from FT_UInt
  1.1231 +	to FT_ULong, to stand with broken huge loca table.
  1.1232 +	Some people insists there are broken TTF including
  1.1233 +	the glyphs over 16-bit limitation, in PRC market.
  1.1234 +	* src/truetype/ttpload.c (tt_face_load_loca):
  1.1235 +	Remove unrequired 16-bit truncation for FT_UInt
  1.1236 +	TT_Face->num_locations.
  1.1237 +
  1.1238 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1239 +
  1.1240 +	smooth: Fix some data types mismatching with their sources.
  1.1241 +
  1.1242 +	* src/smooth/ftgrays.c: The type of `TCoord' is
  1.1243 +	matched to `TPos', because they are mixed in
  1.1244 +	gray_set_cell().  The type of TCell->x is extended
  1.1245 +	to `TPos', because gray_find_cell() sets it by
  1.1246 +	TWorker.ex.  The type of TCell->cover is extended
  1.1247 +	to `TCoord', because gray_render_scanline() adds
  1.1248 +	TCoord value to it.  The type of TWork.cover is matched
  1.1249 +	with TCell->cover.  The types of
  1.1250 +	TWork.{max_cells,num_cells} are changed to FT_PtrDist,
  1.1251 +	because they are calculated from the memory addresses.
  1.1252 +	The type of TWork.ycount is changed to TPos, because
  1.1253 +	it is calculated from TPos variables.
  1.1254 +	(gray_find_cell): The type of `x' is matched with
  1.1255 +	its initial value ras.ex.
  1.1256 +	(gray_render_scanline): The types of `mod', `lift'
  1.1257 +	and `rem' are changed to TCoord, because their values
  1.1258 +	are set with explicit casts to TCoord.  When ras.area
  1.1259 +	is updated by the differential values including
  1.1260 +	`delta', they are explicitly cast to TArea, because
  1.1261 +	the type of `delta' is not TArea but TCoord.
  1.1262 +	(gray_render_line): The type of `mod' is extended
  1.1263 +	from int to TCoord, because (TCoord)dy is added to mod.
  1.1264 +	(gray_hline): The argument `acount' is extended to
  1.1265 +	TCoord, to match with the parameters in the callers.
  1.1266 +
  1.1267 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1268 +
  1.1269 +	cff: Fix some data types mismatching with their sources.
  1.1270 +
  1.1271 +	* src/cff/cffobjs.c (cff_face_init): The type of
  1.1272 +	`scaling' is matched with the scaling parameter
  1.1273 +	in FT_Matrix_Multiply_Scaled() and
  1.1274 +	FT_Vector_Transform_Scaled().
  1.1275 +
  1.1276 +	* src/cff/cffparse.c (cff_parse_real): The type of
  1.1277 +	`power_ten', `scaling', `exponent_add',
  1.1278 +	`integer_length', `fraction_length',
  1.1279 +	`new_fraction_length' and `shift' are matched with
  1.1280 +	the type of `exponent' to avoid unexpected truncation.
  1.1281 +	(cff_parse_fixed_scaled): The type of `scaling' is
  1.1282 +	matched with the `scaling' argument to
  1.1283 +	cff_parse_real().
  1.1284 +	(cff_parse_fixed_dynamic): Ditto.
  1.1285 +	(cff_parse_font_matrix): The type of `scaling' is
  1.1286 +	matched with the `scaling' argument to
  1.1287 +	cff_parse_dynamic().
  1.1288 +
  1.1289 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1290 +
  1.1291 +	autofit: Fix some data types mismatching with their sources.
  1.1292 +
  1.1293 +	* src/autofit/afglobal.c: Correct the type of
  1.1294 +	AF_FaceGlobalsRec.glyph_count to match with
  1.1295 +	FT_Face->num_glyphs.
  1.1296 +	(af_face_globals_compute_script_coverage):
  1.1297 +	Insert explicit cast to compare
  1.1298 +	FT_Long AF_FaceGlobalsRec.glyph_count versus
  1.1299 +	FT_UInt gindex.  The type of `nn' is changed
  1.1300 +	to scan glyph index upto AF_FaceGlobalsRec.glyph_count.
  1.1301 +	(af_face_globals_get_metrics): The type of `script_max'
  1.1302 +	is changed to cover size_t value.  Insert explicit cast
  1.1303 +	to compare FT_Long AF_FaceGlobalsRec.glyph_count versus
  1.1304 +	FT_UInt gindex.
  1.1305 +
  1.1306 +	* src/autofit/afhints.c (af_axis_hints_new_segment):
  1.1307 +	Insert explicit cast to calculate `big_max' from
  1.1308 +	integer and size_t values.
  1.1309 +	(af_axis_hints_new_edge): Ditto.
  1.1310 +
  1.1311 +	* src/autofit/aflatin.c (af_latin_metrics_init_blues):
  1.1312 +	The type of `best_y' is matched to FT_Vector.y.
  1.1313 +	(af_latin_compute_stem_width): The type of `delta' is
  1.1314 +	matched to `dist' and `org_dist'.
  1.1315 +
  1.1316 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1317 +
  1.1318 +	autofit: Count the size of the memory object by ptrdiff_t.
  1.1319 +
  1.1320 +	* src/autofit/afcjk.c (af_cjk_hint_edges): The
  1.1321 +	number of edges `n_edges' should be counted by
  1.1322 +	FT_PtrDist variable instead of FT_Int.
  1.1323 +
  1.1324 +	* src/autofit/aflatin.c (af_latin_hint_edges):
  1.1325 +	Ditto.
  1.1326 +
  1.1327 +	* src/autofit/aftypes.h: In AF_ScriptClassRec,
  1.1328 +	the size of metric `script_metrics_size' should
  1.1329 +	be counted by FT_Offset variable instead of FT_UInt.
  1.1330 +
  1.1331 +	* src/autofit/afhints.c
  1.1332 +	(af_glyph_hints_align_strong_points): The cursors
  1.1333 +	for the edges `min', `max', `mid' in the memory
  1.1334 +	buffer should be typed FT_PtrDist.
  1.1335 +
  1.1336 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1337 +
  1.1338 +	autofit: Fix for unused variable `first'.
  1.1339 +
  1.1340 +	* src/autofit/afhints.c (af_glyph_hints_reload): Insert
  1.1341 +	FT_UNUSED() to hide the unused variable warning.
  1.1342 +
  1.1343 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1344 +
  1.1345 +	Improve bitmap size or pixel variables for 16-bit systems.
  1.1346 +
  1.1347 +	* include/freetype/config/ftstdlib.h: Introduce
  1.1348 +	FT_INT_MIN, to use in signed integer overflow in
  1.1349 +	16-bit and 64-bit platforms.
  1.1350 +	
  1.1351 +	* include/freetype/internal/fttrace.h: Add a tracer
  1.1352 +	to ftsynth.c.
  1.1353 +	
  1.1354 +	* src/base/ftbitmap.c (FT_Bitmap_Embolden): Check
  1.1355 +	invalid strength causing integer overflow on 16-bit
  1.1356 +	platform.
  1.1357 +	
  1.1358 +	* src/base/ftcalc.c (ft_corner_orientation): Change
  1.1359 +	the internal calculation from FT_Int to FT_Long, to
  1.1360 +	avoid an overflow on 16-bit platforms.  The caller of
  1.1361 +	this function should use only the sign of result,
  1.1362 +	so the cast to FT_Int is acceptable.
  1.1363 +	
  1.1364 +	* src/base/ftsynth.c: Introduce a tracer for synth module.
  1.1365 +	(FT_GlyphSlot_Embolden): Check invalid strength causing
  1.1366 +	integer overflow on 16-bit platform.
  1.1367 +	
  1.1368 +	* src/bdf/bdfdrivr.c (BDF_Face_Init): The glyph index
  1.1369 +	in FT2 API is typed as FT_UInt, although BDF driver
  1.1370 +	can handle unsigned long glyph index internally.  To
  1.1371 +	avoid integer overflow on 16-bit platform, too large
  1.1372 +	glyph index should be excluded.
  1.1373 +	(BDF_Glyph_Load): The glyph pitch in FT2 is typed as
  1.1374 +	FT_UInt, although BDF driver can handle unsigned long
  1.1375 +	glyph pitch internally.  To avoid integer overflow on
  1.1376 +	16-bit platform, too large glyph pitch should not be
  1.1377 +	returned.
  1.1378 +	
  1.1379 +	* src/pfr/pfrsbit.c (pfr_slot_load_bitmap): The glyph
  1.1380 +	pitch in FT2 is typed as FT_UInt, although PFR font
  1.1381 +	format can include huge bitmap glyph with 24-bit pitch
  1.1382 +	(however, a glyph spends 16.7 pixel, it's not realistic).
  1.1383 +	To avoid integer overflow on 16-bit platform, huge
  1.1384 +	bitmap glyph should be excluded.
  1.1385 +	
  1.1386 +	* src/smooth/ftgrays.c (gray_hline): As FT_Span.x is
  1.1387 +	truncated to fit its type (16-bit short), FT_Span.y
  1.1388 +	should be truncated to fit its type (FT_Int).
  1.1389 +	
  1.1390 +	* src/cff/cffdrivr.c (cff_get_ros): CFF specification
  1.1391 +	defines the supplement in ROS as a real number.
  1.1392 +	Truncate it to fit public FT2 API.
  1.1393 +	
  1.1394 +	* src/cff/cffparse.c (cff_parse_cid_ros): Warn the
  1.1395 +	supplement if it is truncated or rounded in cff_get_ros().
  1.1396 +	
  1.1397 +	* src/cff/cfftypes.h: Change the type of internal variable
  1.1398 +	`supplement' from FT_Long to FT_ULong to fit the signedness
  1.1399 +	to the type in public API.
  1.1400 +
  1.1401 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1402 +
  1.1403 +	psaux: Prevent invalid arguments to afm_parser_read_vals().
  1.1404 +
  1.1405 +	* src/psaux/afmparse.c (afm_parser_read_vals): Change
  1.1406 +	the type of `n' to prevent negative number how many
  1.1407 +	arguments should be parsed.
  1.1408 +
  1.1409 +	* src/psaux/afmparse.h (afm_parser_read_vals): Ditto.
  1.1410 +
  1.1411 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1412 +
  1.1413 +	base: Prevent some overflows on LP64 systems.
  1.1414 +
  1.1415 +	* src/base/ftadvance.c (FT_Get_Advances): Cast the
  1.1416 +	unsigned long constant FT_LOAD_ADVANCE_ONLY to FT_UInt32
  1.1417 +	for LP64 platforms.
  1.1418 +
  1.1419 +	* src/base/ftcalc.c (FT_Sqrt32): All internal variables
  1.1420 +	are changed to FT_UInt32 from FT_ULong.
  1.1421 +	(FT_MulDiv): Insert casts to FT_Int32 for LP64 platforms.
  1.1422 +	This function is designed for 32-bit integer, although
  1.1423 +	their arguments and return value are FT_Long.
  1.1424 +
  1.1425 +	* src/base/ftobjs.c (FT_Get_Char_Index): Check `charcode'
  1.1426 +	is within unsigned 32-bit integer for LP64 platforms.
  1.1427 +	(FT_Face_GetCharVariantIndex): Check `charcode' and
  1.1428 +	`variantSelector' are within 32-bit integer for LP64
  1.1429 +	platforms.
  1.1430 +	(FT_Face_GetCharsOfVariant): Check `variantSelector' is
  1.1431 +	within unsigned 32-bit integer for LP64 platforms.
  1.1432 +
  1.1433 +	* src/base/fttrigon.c (ft_trig_downscale): The FT_Fixed
  1.1434 +	variable `val' and unsigned long constant FT_TRIG_SCALE
  1.1435 +	are cast to FT_UInt32, when calculates FT_UInt32.
  1.1436 +	(FT_Vector_Rotate): The long constant 1L is cast to
  1.1437 +	FT_Int32 to calculate FT_Int32 `half'.
  1.1438 +
  1.1439 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1440 +
  1.1441 +	cff: Cast the long variables to 32-bit for LP64 systems.
  1.1442 +
  1.1443 +	* src/cff/cffdrivr.c (cff_get_advances): Insert
  1.1444 +	explicit cast to modify a 32-bit flag by unsigned
  1.1445 +	long constant.
  1.1446 +
  1.1447 +	* src/cff/cffobjs.c (cff_face_init): Ditto.
  1.1448 +
  1.1449 +	* src/cff/cffgload.c (cff_decoder_parse_charstrings):
  1.1450 +	Replace the casts to FT_Long by the casts to FT_Int32
  1.1451 +	for LP64 platforms.
  1.1452 +
  1.1453 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1454 +
  1.1455 +	pcf: Improve PCF_PropertyRec.value names on LP64 platforms.
  1.1456 +
  1.1457 +	* src/pcf/pcf.h: In PCF_PropertyRec.value, the member
  1.1458 +	`integer' is replaced by `l', `cardinal' is replaced
  1.1459 +	by `ul', to fix the difference between the name and
  1.1460 +	the types on LP64 platforms.
  1.1461 +
  1.1462 +	* src/pcf/pcfdrivr.c (pcf_get_bdf_property): Reflect
  1.1463 +	PCF_PropertyRec.value change, with appropriate casts
  1.1464 +	to FT_Int32/FT_UInt32.  Their destinations
  1.1465 +	BDF_PropertyRec.{integer|cardinal} are public and
  1.1466 +	explicitly defined as FT_Int32/FT_UInt32.
  1.1467 +
  1.1468 +	* src/pcf/pcfread.c (pcf_get_properties, pcf_load_font):
  1.1469 +	Reflect PCF_PropertyRec.value change.
  1.1470 +
  1.1471 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1472 +
  1.1473 +	pcf: Fix some data types mismatching with their sources.
  1.1474 +
  1.1475 +	* src/pcf/pcfdrivr.c (pcf_cmap_char_index): The type of
  1.1476 +	`code' is matched to PCF_Encoding->enc.
  1.1477 +	(pcf_cmap_char_next): The type of `charcode' is matched
  1.1478 +	to PCF_Encoding->enc.  When *acharcode is set by charcode,
  1.1479 +	an overflow is checked and cast to unsigned 32-bit
  1.1480 +	integer.
  1.1481 +
  1.1482 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1483 +
  1.1484 +	bdf: Improve bdf_property_t.value names for LP64 platforms.
  1.1485 +
  1.1486 +	* src/bdf/bdf.h: In bdf_property_t.value, the member
  1.1487 +	`int32' is replaced by `l', `card32' is replaced by
  1.1488 +	`ul', to fix the difference between the name and the
  1.1489 +	types on LP64 platforms.
  1.1490 +
  1.1491 +	* src/bdf/bdfdrivr.c (BDF_Face_Init): Reflect
  1.1492 +	bdf_property_t.value change.
  1.1493 +	(bdf_get_bdf_property): Reflect bdf_property_t.value
  1.1494 +	change, with appropriate casts to FT_Int32/FT_UInt32.
  1.1495 +	Their destinations BDF_PropertyRec.{integer|cardinal}
  1.1496 +	are public and explicitly defined as FT_Int32/FT_UInt32.
  1.1497 +
  1.1498 +	* src/bdf/bdflib.c (_bdf_add_property): Reflect
  1.1499 +	bdf_property_t.value change.
  1.1500 +
  1.1501 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1502 +
  1.1503 +	bdf: Fix some data types mismatching with their sources.
  1.1504 +
  1.1505 +	* src/bdf/bdrdrivr.c (bdf_cmap_char_index): The type
  1.1506 +	of `code' is matched with BDF_encoding_el->enc.
  1.1507 +	(bdf_cmap_char_next): The type of `charcode' is
  1.1508 +	matched with BDF_encoding_el->enc.  When *acharcode
  1.1509 +	is set by charcode, an overflow is checked and
  1.1510 +	cast to unsigned 32-bit integer.
  1.1511 +
  1.1512 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1513 +
  1.1514 +	autofit: Improve Unicode range definitions.
  1.1515 +
  1.1516 +	* src/autofit/aftypes.h (AF_UNIRANGE_REC): New macro
  1.1517 +	to declare a range by two unsigned 32-bit integer,
  1.1518 +	to avoid 64-bit range definition on LP64 platforms.
  1.1519 +
  1.1520 +	* src/autofit/aflatin.c (af_latin_uniranges): Ditto.
  1.1521 +
  1.1522 +	* src/autofit/aflatin2.c (af_latin2_uniranges): Ditto.
  1.1523 +
  1.1524 +	* src/autofit/afindic.c (af_indic_uniranges): Ditto.
  1.1525 +
  1.1526 +	* src/autofit/afcjk.c (af_cjk_uniranges): Declare
  1.1527 +	the ranges by AF_UNIRANGE_REC.
  1.1528 +
  1.1529 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1530 +
  1.1531 +	smooth: Fix a data type mismatching with its source.
  1.1532 +
  1.1533 +	* src/smooth/ftgrays.c (gray_sweep): The type of
  1.1534 +	`area' is matched with the 3rd argument `area'
  1.1535 +	of gray_hline().
  1.1536 +
  1.1537 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1538 +
  1.1539 +	smooth: Fix a data type mismatching with its source.
  1.1540 +
  1.1541 +	* src/smooth/ftgrays.c (gray_render_line): The type
  1.1542 +	of `area' is matched with TWorker.area.
  1.1543 +
  1.1544 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1545 +
  1.1546 +	cache: Disable the legacy compatibility if 16-bit system.
  1.1547 +
  1.1548 +	* src/cache/ftcbasic.c (FTC_ImageCache_Lookup): Exclude
  1.1549 +	the legacy behaviour from 16-bit platform, because the
  1.1550 +	current hack cannot detect the caller uses this function
  1.1551 +	via legacy convension.
  1.1552 +	(FTC_SBitCache_Lookup): Ditto.
  1.1553 +
  1.1554 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1555 +
  1.1556 +	cache: Check 32-bit glyph index on 16-bit systems.
  1.1557 +
  1.1558 +	* src/cache/ftcbasic.c (ftc_basic_family_get_count):
  1.1559 +	Check overflow caused by the face including large
  1.1560 +	number of glyphs > 64k.
  1.1561 +
  1.1562 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1563 +
  1.1564 +	cache: Fix some data types mismatching with their sources.
  1.1565 +
  1.1566 +	* src/cache/ftccache.c (ftc_cache_resize): The types of
  1.1567 +	`p', `mask', `count' are matched with FTC_Cache->{p,mask}.
  1.1568 +	(FTC_Cache_Clear): The type of `old_index' is matched to
  1.1569 +	FTC_Cache->{p,mask}.
  1.1570 +
  1.1571 +	* src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP): The type
  1.1572 +	of `_idx' is matched with FTC_Cache->{p,mask}.
  1.1573 +
  1.1574 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1575 +
  1.1576 +	cache: Fix some data types mismatching with their sources.
  1.1577 +
  1.1578 +	* src/cache/ftcsbits.c (ftc_snode_load): The types
  1.1579 +	of `xadvance' and `yadvance' are matched with
  1.1580 +	FT_GlyphSlot->advance.{x|y}.
  1.1581 +
  1.1582 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1583 +
  1.1584 +	cache: Cast NULL to a required function type explicitly.
  1.1585 +
  1.1586 +	* src/cache/ftcmanag.c (FTC_Manager_RemoveFaceID):
  1.1587 +	Insert explicit cast from NULL to function type.
  1.1588 +
  1.1589 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1590 +
  1.1591 +	fttypes.h: Cast FT_MAKE_TAG output to FT_Tag exlicitly.
  1.1592 +
  1.1593 +	* include/freetype/fttypes.h (FT_MAKE_TAG):
  1.1594 +	Cast the result to FT_Tag.
  1.1595 +
  1.1596 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1597 +
  1.1598 +	psnames: Handle Unicode codepoints by FT_UInt32 variables.
  1.1599 +
  1.1600 +	* src/psnames/psmodule.c (BASE_GLYPH): Cast the result
  1.1601 +	to unsigned 32-bit integer for LP64 platform.
  1.1602 +	(ps_unicode_value): Return the value by unsigned 32-bit
  1.1603 +	integer instead of unsigned long.
  1.1604 +
  1.1605 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1606 +
  1.1607 +	psaux: Use size_t variable to pass the buffer size.
  1.1608 +
  1.1609 +	* src/psaux/psaux.h (to_bytes): The type of `max_bytes'
  1.1610 +	(the argument to pass the buffer size) is changed to
  1.1611 +	size_t, to match with ANSI C string functions.
  1.1612 +
  1.1613 +	* src/psaux/psconv.h (PS_Conv_StringDecode,
  1.1614 +	PS_Conv_ASCIIHexDecode, PS_Conv_EexecDecode): Ditto.
  1.1615 +
  1.1616 +	* src/psaux/psconv.c (PS_Conv_StringDecode,
  1.1617 +	PS_Conv_ASCIIHexDecode, PS_Conv_EexecDecode): Ditto.
  1.1618 +
  1.1619 +	* src/psaux/psobjs.h (ps_parser_to_bytes): Ditto.
  1.1620 +
  1.1621 +	* src/psaux/psobjs.c (ps_parser_to_bytes): Ditto.
  1.1622 +
  1.1623 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1624 +
  1.1625 +	type1: Use size_t variable to pass the string length.
  1.1626 +
  1.1627 +	* psaux.h: The type of `len' (the argument to pass
  1.1628 +	the buffer size to the function in AFM_ParserRec)
  1.1629 +	is changed to size_t, to match with ANSI C string
  1.1630 +	functions.
  1.1631 +
  1.1632 +	* t1afm.c (t1_get_index): Ditto.
  1.1633 +
  1.1634 +	* test_afm.c (dummy_get_index): Ditto.
  1.1635 +
  1.1636 +	* afmparse.c (afm_parser_read_vals): To call
  1.1637 +	AFM_ParserRec.get_index, the length of token
  1.1638 +	`len' is cast to size_t.
  1.1639 +
  1.1640 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1641 +
  1.1642 +	cid: Fix some data types mismatching with their sources.
  1.1643 +
  1.1644 +	* src/cid/cidparse.c (cid_parser_new): The types of
  1.1645 +	`read_len' and `stream_len' are matched to
  1.1646 +	FT_Stream->size.  Unrequired cast is removed.
  1.1647 +
  1.1648 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1649 +
  1.1650 +	cff: Fix for unused variable `rest'.
  1.1651 +
  1.1652 +	* src/cff/cffparse.c (cff_parse_real): Insert
  1.1653 +	FT_UNUSED() to hide the unused variable warning.
  1.1654 +
  1.1655 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1656 +
  1.1657 +	cff: Fix some data types mismatching with their sources.
  1.1658 +
  1.1659 +	* src/cff/cffgload.c (cff_slot_load): The types of	
  1.1660 +	`top_upm' and `sub_upm' are matched with
  1.1661 +	CFF_FontRecDict->units_per_em.
  1.1662 +
  1.1663 +	* src/cff/cffobjs.c (cff_size_select): Ditto.
  1.1664 +	(cff_size_request): Ditto.
  1.1665 +
  1.1666 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1667 +
  1.1668 +	bdf: Fix some data types mismatching with their sources.
  1.1669 +
  1.1670 +	* bdflib.c (_bdf_list_ensure): The type of `num_items'
  1.1671 +	is matched with _bdf_list_t.used.  Also the types of
  1.1672 +	`oldsize', `newsize', `bigsize' are matched too.
  1.1673 +	(_bdf_readstream): `cursor' is used as an offset to
  1.1674 +	the pointer, it should be typed as FT_Offset.  Also
  1.1675 +	the types of `bytes', `start', `end', `avail' are matched.
  1.1676 +
  1.1677 +	* bdfdrivr.c: The type of BDF_CMap->num_encodings is
  1.1678 +	matched with FT_CMap->clazz->size.
  1.1679 +	(bdf_cmap_char_index): The types of `min', `max', `mid'
  1.1680 +	are matched with BDF_CMap->num_encodings.  The type of
  1.1681 +	`result' is matched with encoding->glyph.
  1.1682 +	(bdf_cmap_char_next): Ditto, the type of `code' is
  1.1683 +	matched with BDF_encoding_el.enc.
  1.1684 +	(bdf_interpret_style): The type of `lengths' is changed
  1.1685 +	to size_t, to take the value by ft_strlen().  Also the
  1.1686 +	types of `len', `nn', `mm' are matched.
  1.1687 +
  1.1688 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1689 +
  1.1690 +	sfnt: Count the size of the memory object by ptrdiff_t.
  1.1691 +
  1.1692 +	* src/sfnt/ttbdf.c (tt_face_find_bdf_prop): The type of
  1.1693 +	`peroperty_len' is changed from FT_UInt to FT_Offset,
  1.1694 +	to match with size_t, which is appropriate type for the
  1.1695 +	object in the memory buffer.
  1.1696 +
  1.1697 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1698 +
  1.1699 +	lzw: Count the size of the memory object by ptrdiff_t.
  1.1700 +
  1.1701 +	* src/lzw/ftzopen.h: The types of FT_LzwState->{buf_total,
  1.1702 +	stack_size} are changed from FT_UInt to FT_Offset, to match
  1.1703 +	with size_t, which is appropriate type for the object in
  1.1704 +	the memory buffer.
  1.1705 +
  1.1706 +	* src/lzw/ftzopen.c (ft_lzwstate_stack_grow): The types of
  1.1707 +	`old_size' and `new_size' are changed from FT_UInt to
  1.1708 +	FT_Offset, to match with size_t, which is appropriate type
  1.1709 +	for the object in the memory buffer.
  1.1710 +
  1.1711 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1712 +
  1.1713 +	otvalid: Count the table size on memory by ptrdiff_t.
  1.1714 +
  1.1715 +	* src/otvalid/otvgpos.c (otv_ValueRecord_validate):
  1.1716 +	Change the type of table size from FT_UInt to
  1.1717 +	FT_PtrDist because it is calculated by the memory
  1.1718 +	addresses.
  1.1719 +
  1.1720 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1721 +
  1.1722 +	otvalid: Prevent an overflow by GPOS/GSUB 32b-bit offset.
  1.1723 +
  1.1724 +	* src/otvalid/otvgpos.c (otv_ExtensionPos_validate):
  1.1725 +	Extend ExtensionOffset from FT_UInt to FT_ULong, to
  1.1726 +	cover 32-bit offset on 16-bit platform.
  1.1727 +
  1.1728 +	* src/otvalid/otvgsub.c (otv_ExtensionSubst_validate):
  1.1729 +	Ditto.
  1.1730 +
  1.1731 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1732 +
  1.1733 +	ftobjs.c: Prevent an overflow in glyph index handling.
  1.1734 +
  1.1735 +	* src/base/ftobjs.c (FT_Face_GetCharsOfVariant):
  1.1736 +	Improve the cast in comparison to avoid the truncation.
  1.1737 +
  1.1738 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1739 +
  1.1740 +	Improve the variable types in raccess_make_file_name().
  1.1741 +
  1.1742 +	* src/base/ftrfork.c (raccess_make_file_name):
  1.1743 +	Change the type of cursor variable `tmp' to const char*,
  1.1744 +	to prevent the unexpected modification of original pathname.
  1.1745 +	(raccess_make_file_name): Change the type of new_length
  1.1746 +	to size_t.
  1.1747 +
  1.1748 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1749 +
  1.1750 +	ftpatent.c: Fix for unused variable `error'.
  1.1751 +
  1.1752 +	* src/base/ftpatent.c (_tt_check_patents_in_range):
  1.1753 +	Fix warning for unused variable `error'.
  1.1754 +
  1.1755 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1756 +
  1.1757 +	type1: Check invalid string longer than PostScript limit.
  1.1758 +
  1.1759 +	* src/type1/t1afm.c (t1_get_index): Check invalid string
  1.1760 +	which exceeds the limit of PostScript string/name objects.
  1.1761 +
  1.1762 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1763 +
  1.1764 +	gzip: Use FT2 zcalloc() & zfree() in ftgzip.c by default.
  1.1765 +
  1.1766 +	* src/gzip/ftgzip.c (zcalloc, zcfree): Disable all
  1.1767 +	zcalloc() & zfree() by zlib in zutil.c, those in
  1.1768 +	ftgzip.c by FT2 are enabled by default.  To use
  1.1769 +	zlib zcalloc() & zfree(), define USE_ZLIB_ZCALLOC.
  1.1770 +	See discussion:
  1.1771 +	http://lists.gnu.org/archive/html/freetype-devel/2009-02/msg00000.html
  1.1772 +
  1.1773 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1774 +
  1.1775 +	gzip: Distinguish PureC from TurboC on MSDOS.
  1.1776 +
  1.1777 +	* src/gzip/zutil.c (zcalloc, zcfree): Enable only for
  1.1778 +	MSDOS platform.
  1.1779 +
  1.1780 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1781 +
  1.1782 +	gxvalid: Insert PureC pragma to allow unevaluated variables.
  1.1783 +
  1.1784 +	* builds/atari/ATARI.H: Insert PureC pragma not to
  1.1785 +	warn against set-but-unevaluated variable in gxvalid
  1.1786 +	module.
  1.1787 +
  1.1788 +2009-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1789 +
  1.1790 +	gxvalid: Pass the union by the pointer instead of the value.
  1.1791 +
  1.1792 +	* src/gxvalid/gxvcommn.h:
  1.1793 +	  - Declare new type `GXV_LookupValueCPtr'.
  1.1794 +	  - Update the type of the 2nd argument to pass GXV_LookupValueDesc
  1.1795 +	    data to the function prototyped as GXV_Lookup_Value_Validate_Func,
  1.1796 +	    from GXV_LookupValueDesc to GXV_LookupValueCPtr.
  1.1797 +	  - Likewise for the function prototyped as
  1.1798 +	    GXV_Lookup_Fmt4_Transit_Func.
  1.1799 +
  1.1800 +	  - Declare new type `GXV_StateTable_GlyphOffsetCPtr'.
  1.1801 +	  - Update the type of the 3rd argument to pass
  1.1802 +	    GXV_StateTable_GlyphOffsetDesc data to the function prototyped
  1.1803 +	    as GXV_StateTable_Entry_Validate_Func, from
  1.1804 +	    GXV_StateTable_GlyphOffsetDesc to GXV_StateTable_GlyphOffsetCPtr.
  1.1805 +
  1.1806 +	  - Declare new type `GXV_XStateTable_GlyphOffsetCPtr'.
  1.1807 +	  - Update the type of the 3rd argument to pass
  1.1808 +	    GXV_XStateTable_GlyphOffsetDesc data to the function prototyped
  1.1809 +	    as GXV_XStateTable_Entry_Validate_Func,
  1.1810 +	    from GXV_XStateTable_GlyphOffsetDesc
  1.1811 +	    to GXV_XStateTable_GlyphOffsetCPtr.
  1.1812 +
  1.1813 +	* src/gxvalid/gxvcommn.c (gxv_LookupTable_fmt0_validate,
  1.1814 +	gxv_XClassTable_lookupval_validate,
  1.1815 +	gxv_XClassTable_lookupfmt4_transit):
  1.1816 +	Update from GXV_LookupValueDesc to GXV_LookupValueCPtr.
  1.1817 +	
  1.1818 +	* src/gxvalid/gxvbsln.c (gxv_bsln_LookupValue_validate,
  1.1819 +	gxv_bsln_LookupFmt4_transit): Ditto.
  1.1820 +	
  1.1821 +	* src/gxvalid/gxvjust.c
  1.1822 +	(gxv_just_pcTable_LookupValue_entry_validate,
  1.1823 +	gxv_just_classTable_entry_validate,
  1.1824 +	gxv_just_wdcTable_LookupValue_validate): Ditto.
  1.1825 +	
  1.1826 +	* src/gxvalid/gxvkern.c
  1.1827 +	(gxv_kern_subtable_fmt1_entry_validate): Ditto.
  1.1828 +	
  1.1829 +	* src/gxvalid/gxvlcar.c (gxv_lcar_LookupValue_validate,
  1.1830 +	gxv_lcar_LookupFmt4_transit): Ditto.
  1.1831 +	
  1.1832 +	* src/gxvalid/gxvopbd.c (gxv_opbd_LookupValue_validate,
  1.1833 +	gxv_opbd_LookupFmt4_transit): Ditto.
  1.1834 +	
  1.1835 +	* src/gxvalid/gxvprop.c (gxv_prop_LookupValue_validate,
  1.1836 +	gxv_prop_LookupFmt4_transit): Ditto.
  1.1837 +	
  1.1838 +	* src/gxvalid/gxvmort4.c
  1.1839 +	(gxv_mort_subtable_type4_lookupval_validate): Ditto.
  1.1840 +	
  1.1841 +	* src/gxvalid/gxvmort0.c
  1.1842 +	(gxv_mort_subtable_type0_entry_validate): Update
  1.1843 +	from GXV_StateTable_GlyphOffsetDesc
  1.1844 +	to GXV_StateTable_GlyphOffsetCPtr.
  1.1845 +	
  1.1846 +	* src/gxvalid/gxvmort1.c
  1.1847 +	(gxv_mort_subtable_type1_entry_validate): Ditto.
  1.1848 +	
  1.1849 +	* src/gxvalid/gxvmort2.c
  1.1850 +	(gxv_mort_subtable_type2_entry_validate): Ditto.
  1.1851 +	
  1.1852 +	* src/gxvalid/gxvmort5.c
  1.1853 +	(gxv_mort_subtable_type5_entry_validate): Ditto.
  1.1854 +	
  1.1855 +	* src/gxvalid/gxvmorx2.c
  1.1856 +	(gxv_morx_subtable_type2_entry_validate): Ditto.
  1.1857 +	
  1.1858 +	* src/gxvalid/gxvmorx5.c
  1.1859 +	(gxv_morx_subtable_type5_entry_validate): Ditto.
  1.1860 +	
  1.1861 +	* src/gxvalid/gxvmorx1.c
  1.1862 +	(gxv_morx_subtable_type1_entry_validate): Ditto.
  1.1863 +	(gxv_morx_subtable_type1_LookupValue_validate,
  1.1864 +	gxv_morx_subtable_type1_LookupFmt4_transit):
  1.1865 +	Update from GXV_LookupValueDesc to GXV_LookupValueCPtr.
  1.1866 +	
  1.1867 +	* src/gxvalid/gxvmorx0.c
  1.1868 +	(gxv_morx_subtable_type0_entry_validate): Update
  1.1869 +	from GXV_XStateTable_GlyphOffsetDesc
  1.1870 +	to GXV_XStateTable_GlyphOffsetCPtr.
  1.1871 +
  1.1872 +2009-07-29  Fabrice Bellet  <fabrice@bellet.info>
  1.1873 +
  1.1874 +	Fix Redhat bugzilla #513582 and Savannah bug #26849.
  1.1875 +
  1.1876 +	* src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP) <FTC_INLINE>: Fix
  1.1877 +	aliasing bug.
  1.1878 +
  1.1879 +2009-07-19  Werner Lemberg  <wl@gnu.org>
  1.1880 +
  1.1881 +	Document recent library changes.
  1.1882 +
  1.1883 +	* docs/CHANGES: Do it.
  1.1884 +
  1.1885 +2009-07-17  Werner Lemberg  <wl@gnu.org>
  1.1886 +
  1.1887 +	Fix Savannah bug #23786.
  1.1888 +
  1.1889 +	* src/truetype/ttobjs.c (tt_size_init_bytecode): Don't reset x_ppem
  1.1890 +	and y_ppem.  Otherwise the `*_CVT_Stretched' functions in ttinterp.c
  1.1891 +	get never called.
  1.1892 +	An anonymous guy suggested this change on Savannah, and it seems to
  1.1893 +	be the right solution.
  1.1894 +
  1.1895 +2009-07-15  Werner Lemberg  <wl@gnu.org>
  1.1896 +
  1.1897 +	* docs/release: Updated.
  1.1898 +
  1.1899 +2009-07-15  Werner Lemberg  <wl@gnu.org>
  1.1900 +
  1.1901 +	README.CVS -> README.git
  1.1902 +
  1.1903 +	* README.CVS: Renamed to...
  1.1904 +	* README.git: This.
  1.1905 +	Updated.
  1.1906 +
  1.1907 +2009-07-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1908 +
  1.1909 +	Borland C++ compiler patch proposed by Mirco Babin.
  1.1910 +	http://lists.gnu.org/archive/html/freetype/2009-07/msg00016.html.
  1.1911 +
  1.1912 +	* builds/exports.mk: Delete unused flags, CCexe_{CFLAGS,LDFLAGS}.
  1.1913 +	Fix APINAMES_C and APINAMES_EXE pathnames to reflect the platform
  1.1914 +	specific pathname syntax.
  1.1915 +	* builds/compiler/bcc.mk: Remove unused flag, CCexe_LDFLAGS.
  1.1916 +	Define TE = `-e' separately (bcc32 cannot specify the pathname of
  1.1917 +	binary executable by T = `-o').
  1.1918 +	Extend the large page size in linking freetype.lib.
  1.1919 +	Add extra CLEAN target to delete bcc specific temporary files.
  1.1920 +	* builds/compiler/bcc-dev.mk: Ditto.
  1.1921 +
  1.1922 +2009-07-14  Werner Lemberg  <wl@gnu.org>
  1.1923 +
  1.1924 +	Fix Savannah bug #27026.
  1.1925 +
  1.1926 +	* builds/win32/vc2005/freetype.sln: Use correct version number.
  1.1927 +
  1.1928 +2009-07-12  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1929 +
  1.1930 +	Add a script to check the undefined and unused trace macros.
  1.1931 +
  1.1932 +	* src/tools/chktrcmp.py: A script to check trace_XXXX macros
  1.1933 +	that are used in C source but undefined in fttrace.h, or
  1.1934 +	defined in fttrace.h but unused in C sources.  See
  1.1935 +	http://lists.gnu.org/archive/html/freetype-devel/2009-07/msg00013.html.
  1.1936 +	* docs/DEBUG: Mention on chktrcmp.py.
  1.1937 +	* docs/release: Ditto.
  1.1938 +
  1.1939 +2009-07-09  Werner Lemberg  <wl@gnu.org>
  1.1940 +
  1.1941 +	[ftraster] Make it compile again with -D_STANDALONE_.
  1.1942 +
  1.1943 +	* src/raster/ftraster.c [_STANDALONE_]: Define
  1.1944 +	FT_CONFIG_STANDARD_LIBRARY_H.
  1.1945 +	Include `string.h'.
  1.1946 +	Don't include `rastpic.h'.
  1.1947 +	Define FT_DEFINE_RASTER_FUNCS.
  1.1948 +
  1.1949 +2009-07-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1950 +
  1.1951 +	smooth: Check glyph size by width/height, instead of pitch/height.
  1.1952 +	Suggested by der Mouse <mouse@Rodents-Montreal.ORG>.
  1.1953 +
  1.1954 +	* src/smooth/ftsmooth.c (ft_smooth_render_generic): Improve
  1.1955 +	the check for too large glyph.  Replace the pair of `pitch' and
  1.1956 +	`height' by the pair of `width' and `height'.  `pitch' cannot
  1.1957 +	be greater than `height'.  The required is checking the product
  1.1958 +	`pitch' * `height' <= FT_ULONG_MAX, but we use cheap checks for
  1.1959 +	the realistic case only.
  1.1960 +
  1.1961 +2009-07-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1962 +
  1.1963 +	Register 2 missing trace components, t1afm and ttbdf.
  1.1964 +
  1.1965 +	* include/freetype/internal/fttrace.h: Add FT_TRACE_DEF( t1afm )
  1.1966 +	and FT_TRACE_DEF( ttbdf ).  See
  1.1967 +	http://lists.gnu.org/archive/html/freetype-devel/2009-07/msg00013.html
  1.1968 +
  1.1969 +2009-07-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1970 +
  1.1971 +	Register a trace component for ftgloadr.c.
  1.1972 +
  1.1973 +	* include/freetype/internal/fttrace.h: Add FT_TRACE_DEF( gloader ).
  1.1974 +	The macro `trace_gloader' was already used in the initial version
  1.1975 +	on 2002-02-24.
  1.1976 +
  1.1977 +2009-07-08  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.1978 +
  1.1979 +	Prevent the overflows by a glyph with too many points or contours.
  1.1980 +	The bug is reported by Boris Letocha <b.letocha@gmc.net>.  See
  1.1981 +	http://lists.gnu.org/archive/html/freetype-devel/2009-06/msg00031.html
  1.1982 +	http://lists.gnu.org/archive/html/freetype-devel/2009-07/msg00002.html	
  1.1983 +
  1.1984 +	* include/freetype/ftimage.h (FT_OUTLINE_CONTOURS_MAX,
  1.1985 +	FT_OUTLINE_POINTS_MAX): New macros to declare the maximum
  1.1986 +	values of FT_Outline.{n_contours,n_points}.
  1.1987 +	* src/base/ftgloadr.c (FT_GlyphLoader_CheckPoints): Check the
  1.1988 +	total numbers of points and contours cause no overflows in
  1.1989 +	FT_Outline.{n_contours,n_points}.
  1.1990 +
  1.1991 +	* include/freetype/internal/ftgloadr.h (FT_GLYPHLOADER_CHECK_P,
  1.1992 +	FT_GLYPHLOADER_CHECK_C): Compare the numbers of points and
  1.1993 +	contours as unsigned long number, instead of signed int, to
  1.1994 +	prevent the overflows on 16-bit systems.
  1.1995 +
  1.1996 +2009-07-05  Bram Tassyns  <bramt@enfocus.be>
  1.1997 +
  1.1998 +	Improve compatibility to Acroread.
  1.1999 +	This fixes Savannah bug #26944.
  1.2000 +
  1.2001 +	* src/cff/cffload.c (cff_charset_compute_cids): For multiple GID to
  1.2002 +	single CID mappings, make the lowest value win.
  1.2003 +
  1.2004 +2009-06-28  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.2005 +
  1.2006 +	ftpatent: Fix a bug by wrong usage of service->table_info().
  1.2007 +	http://lists.gnu.org/archive/html/freetype-devel/2008-12/msg00039.html
  1.2008 +
  1.2009 +	* include/freetype/internal/services/svsfnt.h: Extend
  1.2010 +	FT_SFNT_TableInfoFunc() to take new argument to obtain the offset
  1.2011 +	to the specified table.
  1.2012 +	* src/sfnt/sfdriver.c (sfnt_table_info): Extend to return the
  1.2013 +	table-offset to the caller function.
  1.2014 +	* src/base/ftpatent.c (_tt_check_patents_in_table): Use new
  1.2015 +	service->table_info().
  1.2016 +	* src/base/ftobjs.c (FT_Sfnt_Table_Info): Synchronize to new
  1.2017 +	service->table_info().
  1.2018 +
  1.2019 +2009-06-28  Werner Lemberg  <wl@gnu.org>
  1.2020 +
  1.2021 +	[psaux, cff] Protect against nested `seac' calls.
  1.2022 +
  1.2023 +	* include/freetype/internal/psaux.h (T1_Decoder), src/cff/cffgload.h
  1.2024 +	(CFF_Decoder): Add `seac' boolean variable.
  1.2025 +
  1.2026 +	* src/cff/cffgload.c (cff_operator_seac), src/psaux/t1decode.c
  1.2027 +	(t1operator_seac): Use it.
  1.2028 +
  1.2029 +2009-06-28  Werner Lemberg  <wl@gnu.org>
  1.2030 +
  1.2031 +	Thinko.
  1.2032 +
  1.2033 +	* src/psaux/t1decode.c (t1operator_seac)
  1.2034 +	[FT_CONFIG_OPTION_INCREMENTAL]: Test for existence of incremental
  1.2035 +	interface.
  1.2036 +
  1.2037 +2009-06-28  Werner Lemberg  <wl@gnu.org>
  1.2038 +
  1.2039 +	* devel/ftoption.h [FT_CONFIG_OPTION_INCREMENTAL]: Define.
  1.2040 +
  1.2041 +2009-06-27  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.2042 +
  1.2043 +	Add tools to preprocess the source files for AtariST PureC.
  1.2044 +
  1.2045 +	* builds/atari/deflinejoiner.awk: New file to filter C source files
  1.2046 +	for broken C preprocessor of PureC compiler.
  1.2047 +
  1.2048 +	* builds/atari/gen-purec-patch.sh: New file to generate a patch set
  1.2049 +	for PureC, by using deflinejoiner.awk.
  1.2050 +
  1.2051 +2009-06-27  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.2052 +
  1.2053 +	Keep existing modules.cfg in the building tree.
  1.2054 +
  1.2055 +	* configure: If `configure' is executed outside of the source tree,
  1.2056 +	an existing `modules.cfg' file in the build directory should be
  1.2057 +	kept, not overwritten by the version in the source tree.
  1.2058 +
  1.2059 +2009-06-27  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.2060 +
  1.2061 +	Filter --srcdir= option before invoking builds/unix/configure.
  1.2062 +
  1.2063 +	* configure: If builds/unix/configure is invoked with --srcdir
  1.2064 +	option, the option should take `builds/unix' directory instead of
  1.2065 +	the top source directory.  Thus the configure script in the top
  1.2066 +	directory should modify the --srcdir= option if
  1.2067 +	`builds/unix/configure' is invoked.
  1.2068 +
  1.2069 +2009-06-27  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.2070 +
  1.2071 +	Improve configure.raw for cross-building on exe-suffixed systems.
  1.2072 +
  1.2073 +	* builds/unix/configure.raw: Fix a bug in sed script to extract
  1.2074 +	native suffix for binary executables, patch by Peter Breitenlohner.
  1.2075 +	http://lists.gnu.org/archive/html/freetype-devel/2009-04/msg00036.html
  1.2076 +
  1.2077 +2009-06-26  Werner Lemberg  <wl@gnu.org>
  1.2078 +
  1.2079 +	[truetype] Remove TT_SubGlyphRec.
  1.2080 +
  1.2081 +	* src/truetype/ttobjs.h (TT_SubGlyphRec): Removed, unused.
  1.2082 +
  1.2083 +2009-06-26  Werner Lemberg  <wl@gnu.org>
  1.2084 +
  1.2085 +	* */*: For warning messages, replace FT_ERROR with FT_TRACE0.
  1.2086 +
  1.2087 +	FT_ERROR is now used only if a function produces a non-zero `error'
  1.2088 +	value.
  1.2089 +
  1.2090 +	Formatting, improving and harmonizing debug strings.
  1.2091 +
  1.2092 +2009-06-25  Werner Lemberg  <wl@gnu.org>
  1.2093 +
  1.2094 +	Provide version information better.
  1.2095 +
  1.2096 +	* src/base/ftinit.c (FT_Init_FreeType): Don't set version here
  1.2097 +	but...
  1.2098 +	* src/base/ftobjs.c (FT_New_Library): Here.
  1.2099 +
  1.2100 +2009-06-22  Werner Lemberg  <wl@gnu.org>
  1.2101 +
  1.2102 +	Use 16.16 format while parsing Type 1 charstrings.
  1.2103 +	This fixes Savannah bug #26867.
  1.2104 +
  1.2105 +	Previously, only integers have been used which can lead to serious
  1.2106 +	rounding errors.
  1.2107 +
  1.2108 +	However, fractional values are only used internally; after the
  1.2109 +	charstrings (of either Type 1 or 2) have been processed, the
  1.2110 +	resulting coordinates get rounded to integers currently -- before
  1.2111 +	applying scaling.  This should be fixed; at the same time a new load
  1.2112 +	flag should be introduced, to be used in combination with
  1.2113 +	FT_LOAD_NO_SCALE, which indicates that font units are returned in
  1.2114 +	16.16 format.  Similarly, the incremental interface should be
  1.2115 +	extended to allow fractional values for metrics.
  1.2116 +
  1.2117 +	* include/freetype/internal/psaux.h (T1_BuilderRec): Remove `shift'
  1.2118 +	field.
  1.2119 +	* include/freetype/internal/pshints.h (T1_Hints_SetStemFunc,
  1.2120 +	T1_Hints_SetStem3Func): Use FT_Fixed for coordinates.
  1.2121 +
  1.2122 +	* src/psaux/psobjs.c: Include FT_INTERNAL_CALC_H.
  1.2123 +	(t1_build_add_point): Always convert fixed to integer.
  1.2124 +	* src/psaux/t1decode.c (t1_decoder_parse_charstrings):
  1.2125 +	Use 16.16 format everywhere (except for large integers followed by a
  1.2126 +	`div').
  1.2127 +	[CAN_HANDLE_NON_INTEGRAL_T1_OPERANDS]: Remove #ifdef and activate
  1.2128 +	code uncoditionally.
  1.2129 +	Add support for random numbers and update remaining code
  1.2130 +	accordingly; this should work now.
  1.2131 +	(t1_operator_seac): Updated.
  1.2132 +	* src/psaux/pshrec.c: Include FT_INTERNAL_CALC_H.
  1.2133 +	(ps_hints_t1stem3, t1_hints_stem): Updated.
  1.2134 +
  1.2135 +	* src/cid/cidgload.c: Include FT_INTERNAL_CALC_H.
  1.2136 +	(cid_load_glyph) [FT_CONFIG_OPTION_INCREMENTAL],
  1.2137 +	(cid_face_compute_max_advance, cid_slot_load_glyph): Updated.
  1.2138 +
  1.2139 +	* src/type1/t1gload.c (T1_Parse_Glyph_And_Get_Char_String)
  1.2140 +	[FT_CONFIG_OPTION_INCREMENTAL], (T1_Get_Advances, T1_Load_Glyph):
  1.2141 +	Updated.
  1.2142 +	* src/type1/t1load.c: Include FT_INTERNAL_CALC_H.
  1.2143 +	* src/type1/t1objs.c (T1_Face_Init): Updated.
  1.2144 +
  1.2145 +2009-06-21  Werner Lemberg  <wl@gnu.org>
  1.2146 +
  1.2147 +	* src/pshinter/pshrec.c: Use PSH_Err_Ok.
  1.2148 +
  1.2149 +2009-06-21  Werner Lemberg  <wl@gnu.org>
  1.2150 +
  1.2151 +	Code beautification.
  1.2152 +
  1.2153 +	* src/type1/t1load.c (FT_INT_TO_FIXED): Removed.
  1.2154 +	Replace everywhere with INT_TO_FIXED.
  1.2155 +	(FT_FIXED_TO_INT): Move to ...
  1.2156 +	* include/freetype/internal/ftcalc.h (FIXED_TO_INT): Here.
  1.2157 +	Update all users.
  1.2158 +
  1.2159 +2009-06-20  Werner Lemberg  <wl@gnu.org>
  1.2160 +
  1.2161 +	Remove unused variables.
  1.2162 +
  1.2163 +	* include/freetype/internal/psaux.h (T1_BuilderRec),
  1.2164 +	src/cff/cffgload.h (CFF_Builder): Remove `last'.
  1.2165 +	Update all users.
  1.2166 +
  1.2167 +2009-06-20  Werner Lemberg  <wl@gnu.org>
  1.2168 +
  1.2169 +	[psaux] Check large integers while parsing charstrings.
  1.2170 +
  1.2171 +	* src/psaux/t1decode.c (t1_decoder_parse_charstrings): Large
  1.2172 +	integers must be followed by a `div' operator.
  1.2173 +
  1.2174 +2009-06-20  Werner Lemberg  <wl@gnu.org>
  1.2175 +
  1.2176 +	[cff] Revert last change.
  1.2177 +
  1.2178 +	* src/cff/cffgload.c (cff_decoder_parse_charstrings): Do it.
  1.2179 +	Next time, don't confuse Type 2 charstring opcodes with TOP DICT
  1.2180 +	values...
  1.2181 +
  1.2182 +2009-06-20  Werner Lemberg  <wl@gnu.org>
  1.2183 +
  1.2184 +	* src/autofit/aflatin.c (af_latin_metrics_check_digits): Fix
  1.2185 +	compiler warning.
  1.2186 +
  1.2187 +2009-06-20  Werner Lemberg  <wl@gnu.org>
  1.2188 +
  1.2189 +	* builds/compiler/gcc.mk (CFLAGS): Use -O3, not -O6.
  1.2190 +
  1.2191 +2009-06-19  Werner Lemberg  <wl@gnu.org>
  1.2192 +
  1.2193 +	[cff] Fix handling of reserved byte 0xFF.
  1.2194 +
  1.2195 +	* src/cff/cffgload.c (cff_decoder_parse_charstrings): Abort if byte
  1.2196 +	0xFF is encountered.
  1.2197 +
  1.2198 +2009-06-19  Werner Lemberg  <wl@gnu.org>
  1.2199 +
  1.2200 +	Improve debug messages for Type1 charstrings.
  1.2201 +
  1.2202 +	* src/psaux/t1decode.c (t1_decoder_parse_charstrings): Emit newlines
  1.2203 +	after instructions.
  1.2204 +	Prettify output.
  1.2205 +
  1.2206 +2009-06-19  Werner Lemberg  <wl@gnu.org>
  1.2207 +
  1.2208 +	More ftgray fixes for FT_STATIC_RASTER.
  1.2209 +	Problems reported by suyu@cooee.cn.
  1.2210 +
  1.2211 +	* src/smooth/ftgrays.c (gray_move_to, gray_raster_render): Use
  1.2212 +	RAS_VAR.
  1.2213 +
  1.2214 +2009-06-18  Werner Lemberg  <wl@gnu.org>
  1.2215 +
  1.2216 +	* docs/CHANGES: Updated.
  1.2217 +
  1.2218 +2009-06-18  Werner Lemberg  <wl@gnu.org>
  1.2219 +
  1.2220 +	Fix B/W rasterization of subglyphs with different drop-out modes.
  1.2221 +
  1.2222 +	Normally, the SCANMODE instruction (if present) to set the drop-out
  1.2223 +	mode in a TrueType font is located in the `prep' table only and thus
  1.2224 +	valid for all glyphs.  However, there are fonts like `pala.ttf'
  1.2225 +	which additionally contain this instruction in the hinting code of
  1.2226 +	some glyphs (but not all).  As a result it can happen that a
  1.2227 +	composite glyph needs multiple drop-out modes for its subglyphs
  1.2228 +	since the rendering state gets reset for each subglyph.
  1.2229 +
  1.2230 +	FreeType collects the hinted outlines from all subglyphs, then it
  1.2231 +	sends the data to the rasterizer.  It also sends the drop-out mode
  1.2232 +	-- after hinting has been applied -- and here is the error: It sends
  1.2233 +	the drop-out mode of the last subglyph only; drop-out modes of all
  1.2234 +	other subglyphs are lost.
  1.2235 +
  1.2236 +	This patch fixes the problem; it adds a second, alternative
  1.2237 +	mechanism to pass the drop-out mode: For each contour, the
  1.2238 +	rasterizer now checks the first `tags' array element.  If bit 2 is
  1.2239 +	set, bits 5-7 contain the contour's drop-out mode, overriding the
  1.2240 +	global drop-out mode.
  1.2241 +
  1.2242 +	* include/freetype/ftimage.h (FT_CURVE_TAG_HAS_SCANMODE): New macro.
  1.2243 +
  1.2244 +	* src/truetype/ttgload.c (TT_Hint_Glyph): Store drop-out mode in
  1.2245 +	`tags[0]'.
  1.2246 +
  1.2247 +	* src/raster/ftraster.c (Flow_Up, Overshoot_Top, Overshoot_Bottom):
  1.2248 +	Use bits 3-5 instead of 0-2.
  1.2249 +	(New_Profile): Set the drop-out mode in the profile's `flags' field.
  1.2250 +	(Decompose_Curve): Check `tags[0]' and set `dropOutControl' if
  1.2251 +	necessary.
  1.2252 +	(Vertical_Sweep_Drop, Horizontal_Sweep_Drop,
  1.2253 +	Horizontal_Gray_Sweep_Drop, Draw_Sweep): Use the profile's drop-out
  1.2254 +	mode.
  1.2255 +
  1.2256 +2009-06-16  Werner Lemberg  <wl@gnu.org>
  1.2257 +
  1.2258 +	Improve scan conversion rules 4 and 6.
  1.2259 +
  1.2260 +	Two new constraints are introduced to better identify a `stub' -- a
  1.2261 +	concept which is only vaguely described in the OpenType
  1.2262 +	specification.  The old code was too rigorous and suppressed more
  1.2263 +	pixel than it should.
  1.2264 +
  1.2265 +	  . The intersection of the two profiles with the scanline is less
  1.2266 +	    than a half pixel.  Code related to this was already present in
  1.2267 +	    the sources but has been commented out.
  1.2268 +
  1.2269 +	  . The endpoint of the original contour forming a profile has a
  1.2270 +	    distance (`overshoot') less than half a pixel to the scanline.
  1.2271 +
  1.2272 +	Note that the two additional conditions fix almost all differences
  1.2273 +	to the Windows rasterizer, but some problematic cases remain.
  1.2274 +
  1.2275 +	* src/raster/ftraster.c (Overshoot_Top, Overshoot_Bottom): New
  1.2276 +	macros for the `flags' field in the `TProfile' structure.
  1.2277 +	(IS_BOTTOM_OVERSHOOT, IS_TOP_OVERSHOOT): New macros.
  1.2278 +	(New_Profile, End_Profile): Pass overshoot flag as an argument and
  1.2279 +	set it accordingly.
  1.2280 +	Update callers.
  1.2281 +	(Vertical_Sweep_Drop, Horizontal_Sweep_Drop): Implement the two new
  1.2282 +	constraints.
  1.2283 +
  1.2284 +2009-06-11  Werner Lemberg  <wl@gnu.org>
  1.2285 +
  1.2286 +	Increase precision for B/W rasterizer.
  1.2287 +
  1.2288 +	* src/raster/ftraster.c (Set_High_Precision): Add two more bits to
  1.2289 +	the precision.  This corrects rendering of some small glyphs, for
  1.2290 +	example, glyph `xi' in verdana.ttf at 13 ppem.  Testing with ftbench
  1.2291 +	on my GNU/Linux box I don't see a performance degradation.
  1.2292 +
  1.2293 +2009-06-08  Michael Zucchi  <notzed@gmail.com>
  1.2294 +
  1.2295 +	Handle FT_STROKER_LINECAP_BUTT.
  1.2296 +	This fixes Savannah bug #26757.
  1.2297 +
  1.2298 +	* src/base/ftstroke.c (ft_stroker_cap): Implement it.
  1.2299 +
  1.2300 +2009-06-07  Harald Fernengel  <harry@kdevelop.org>
  1.2301 +
  1.2302 +	Fix some potential out-of-memory crashes.
  1.2303 +
  1.2304 +	* src/base/ftobjs.c (ft_glyphslot_done): Check `slot->internal'.
  1.2305 +	* src/base/ftstream.c (FT_Stream_ReleaseFrame): Check `stream'.
  1.2306 +	* src/truetype/ttinterp.c (TT_New_Context): Avoid double-free of
  1.2307 +	`exec' in case of failure.
  1.2308 +
  1.2309 +2009-06-07  Werner Lemberg  <wl@gnu.org>
  1.2310 +
  1.2311 +	Simplify math.
  1.2312 +	Suggested by Alexei Podtelezhnikov <apodtele@gmail.com>.
  1.2313 +
  1.2314 +	* src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop,
  1.2315 +	Horizontal_Gray_Sweep_Drop): Do it.
  1.2316 +
  1.2317 +2009-06-04  Werner Lemberg  <wl@gnu.org>
  1.2318 +
  1.2319 +	Preparation for fixing scan conversion rules 4 and 6.
  1.2320 +
  1.2321 +	* src/raster/ftraster.c (TFlow): Replace enumeration with...
  1.2322 +	(Flow_Up): This macro.
  1.2323 +	(TProfile): Replace `flow' member with `flags' bit field.
  1.2324 +	Update all affected code.
  1.2325 +
  1.2326 +2009-05-29  James Cloos  <cloos@jhcloos.com>
  1.2327 +
  1.2328 +	Enable autohinting for glyphs rotated by multiples of 90°.
  1.2329 +
  1.2330 +	* src/base/ftobjs.c (FT_Load_Glyph): Alter check for permitted
  1.2331 +	matrices to allow rotations by multiples of 90°, not only unrotated,
  1.2332 +	possibly slanted matrices.
  1.2333 +
  1.2334 +2009-05-28  Werner Lemberg  <wl@gnu.org>
  1.2335 +
  1.2336 +	Remove compiler warning.
  1.2337 +	Reported by Krzysztof Kowalczyk <kkowalczyk@gmail.com>.
  1.2338 +
  1.2339 +	* src/autofit/aflatin2.c (af_latin2_hint_edges): Move declaration of
  1.2340 +	`n_edges' into `#if' block.
  1.2341 +
  1.2342 +2009-05-28  Werner Lemberg  <wl@gnu.org>
  1.2343 +
  1.2344 +	Make compilation work with FT_CONFIG_OPTION_USE_ZLIB not defined.
  1.2345 +	Reported by Krzysztof Kowalczyk <kkowalczyk@gmail.com>.
  1.2346 +
  1.2347 +	* src/pcf/pcfdrivr.c (PCF_Face_Init) [!FT_CONFIG_OPTION_USE_ZLIB]:
  1.2348 +	Make it work.
  1.2349 +	Simplify #ifdef logic.
  1.2350 +
  1.2351 +2009-05-22  Werner Lemberg  <wl@gnu.org>
  1.2352 +
  1.2353 +	Improve b/w rasterizer.
  1.2354 +	Problem reported by Krzysztof Kotlenga <pocek@users.sf.net>.
  1.2355 +
  1.2356 +	* src/raster/raster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop,
  1.2357 +	Horizontal_Gray_Sweep_Drop): For smart drop-out mode, if
  1.2358 +	intersections are equally distant relative to next pixel center,
  1.2359 +	select the left pixel, not the right one.
  1.2360 +
  1.2361 +2009-05-19  Werner Lemberg  <wl@gnu.org>
  1.2362 +
  1.2363 +	Fix Savannah bug #26600.
  1.2364 +
  1.2365 +	* src/type42/t42parse.c (t42_load_keyword): Handle
  1.2366 +	T1_FIELD_LOCATION_FONT_EXTRA.
  1.2367 +
  1.2368 +2009-04-30  Werner Lemberg  <wl@gnu.org>
  1.2369 +
  1.2370 +	Document recent changes to ftview.
  1.2371 +
  1.2372 +	* docs/CHANGES: Do it.
  1.2373 +
  1.2374 +2009-04-27  Werner Lemberg  <wl@gnu.org>
  1.2375 +
  1.2376 +	autohinter: Don't change digit widths if all widths are the same.
  1.2377 +	This fixes FreeDesktop bug #21197.
  1.2378 +
  1.2379 +	* src/autofit/afglobal.c (AF_DIGIT): New macro.
  1.2380 +	(af_face_globals_compute_script_coverage): Mark ASCII digits in
  1.2381 +	`glyph_scripts' array.
  1.2382 +	(af_face_globals_get_metrics): Updated.
  1.2383 +	(af_face_globals_is_digit): New function.
  1.2384 +	* src/autofit/afglobal.h: Updated.
  1.2385 +	(AF_ScriptMetricsRec): Add `digits_have_same_width' flag.
  1.2386 +
  1.2387 +	* src/autofit/aflatin.c: Include FT_ADVANCES_H.
  1.2388 +	(af_latin_metrics_check_digits): New function.
  1.2389 +	(af_latin_metrics_init): Use it.
  1.2390 +	* src/autofit/aflatin.h: Updated.
  1.2391 +	* src/autofit/afcjk.c (af_cjk_metrics_init): Updated.
  1.2392 +
  1.2393 +	* src/autofit/aflatin2.c: Similar changes as with aflatin.c.
  1.2394 +
  1.2395 +	* src/autofit/afloader.c (af_loader_load_g): Test digit width.
  1.2396 +
  1.2397 +	* docs/CHANGES: Document it.
  1.2398 +
  1.2399 +2009-04-26  Werner Lemberg  <wl@gnu.org>
  1.2400 +
  1.2401 +	Make ftgrays compile with _STANDALONE_ and FT_STATIC_RASTER again.
  1.2402 +	Problems reported by suyu@cooee.cn.
  1.2403 +
  1.2404 +	* src/smooth/ftgrays.c (FT_DEFINE_OUTLINE_FUNCS,
  1.2405 +	FT_DEFINE_RASTER_FUNCS) [_STANDALONE_]: Define.
  1.2406 +	[!_STANDALONE_]: Include ftspic.h only here.
  1.2407 +	(ras): Define/declare after definition of `TWorker'.
  1.2408 +	Use `RAS_VAR_' where necessary.
  1.2409 +
  1.2410 +2009-04-21  Karl Berry  <karl@gnu.org>
  1.2411 +
  1.2412 +	Fix AC_CHECK_FT2.
  1.2413 +
  1.2414 +	* builds/unix/freetype2.m4: Only check PATH for freetype-config if
  1.2415 +	we did not already find it from a prefix option.
  1.2416 +
  1.2417 +2009-04-05  Oran Agra  <oran@monfort.co.il>
  1.2418 +
  1.2419 +	Add #error to modules and files that do not support PIC yet.
  1.2420 +
  1.2421 +	When FT_CONFIG_OPTION_PIC is defined the following files will
  1.2422 +	create #error:
  1.2423 +	* src/bdf/bdfdrivr.h
  1.2424 +	* src/cache/ftcmanag.c
  1.2425 +	* src/cid/cidriver.h
  1.2426 +	* src/gxvalid/gxvmod.h
  1.2427 +	* src/gzip/ftgzip.c
  1.2428 +	* src/lzw/ftlzw.c
  1.2429 +	* src/otvalid/otvmod.h
  1.2430 +	* src/pcf/pcfdrivr.h
  1.2431 +	* src/pfr/pfrdrivr.h
  1.2432 +	* src/psaux/psauxmod.h
  1.2433 +	* src/type1/t1driver.h
  1.2434 +	* src/type42/t42drivr.h
  1.2435 +	* src/winfonts/winfnt.h
  1.2436 +
  1.2437 +2009-04-05  Oran Agra  <oran@monfort.co.il>
  1.2438 +
  1.2439 +	Position Independent Code (PIC) support in autofit module.
  1.2440 +
  1.2441 +	* include/freetype/internal/autohint.h add macros to init
  1.2442 +	instances of FT_AutoHinter_ServiceRec.
  1.2443 +
  1.2444 +	* src/autofit/afmodule.h declare autofit_module_class
  1.2445 +	using macros from ftmodapi.h,
  1.2446 +	when FT_CONFIG_OPTION_PIC is defined create and destroy
  1.2447 +	functions will be declared.
  1.2448 +	* src/autofit/afmodule.c when FT_CONFIG_OPTION_PIC is defined
  1.2449 +	af_autofitter_service and autofit_module_class structs
  1.2450 +	will have functions to init or create and destroy them
  1.2451 +	instead of being allocated in the global scope.
  1.2452 +	And macros will be used from afpic.h in order to access them.
  1.2453 +
  1.2454 +	* src/autofit/aftypes.h add macros to init and declare
  1.2455 +	instances of AF_ScriptClassRec.
  1.2456 +
  1.2457 +	* src/autofit/afcjk.h declare af_cjk_script_class
  1.2458 +	using macros from aftypes.h,
  1.2459 +	when FT_CONFIG_OPTION_PIC is defined init function will be declared.
  1.2460 +	* src/autofit/afcjk.c when FT_CONFIG_OPTION_PIC is defined
  1.2461 +	af_cjk_script_class struct will have function to init it instead of
  1.2462 +	being allocated in the global scope.
  1.2463 +
  1.2464 +	* src/autofit/afdummy.h declare af_dummy_script_class
  1.2465 +	using macros from aftypes.h,
  1.2466 +	when FT_CONFIG_OPTION_PIC is defined init function will be declared.
  1.2467 +	* src/autofit/afdummy.c when FT_CONFIG_OPTION_PIC is defined
  1.2468 +	af_dummy_script_class struct will have function to init it instead of
  1.2469 +	being allocated in the global scope.
  1.2470 +
  1.2471 +	* src/autofit/afindic.h declare af_indic_script_class
  1.2472 +	using macros from aftypes.h,
  1.2473 +	when FT_CONFIG_OPTION_PIC is defined init function will be declared.
  1.2474 +	* src/autofit/afindic.c when FT_CONFIG_OPTION_PIC is defined
  1.2475 +	af_indic_script_class struct will have function to init it instead of
  1.2476 +	being allocated in the global scope.
  1.2477 +
  1.2478 +	* src/autofit/aflatin.h declare af_latin_script_class
  1.2479 +	using macros from aftypes.h,
  1.2480 +	when FT_CONFIG_OPTION_PIC is defined init function will be declared.
  1.2481 +	* src/autofit/aflatin.c when FT_CONFIG_OPTION_PIC is defined
  1.2482 +	af_latin_script_class struct will have function to init it instead of
  1.2483 +	being allocated in the global scope.
  1.2484 +	Change af_latin_blue_chars to be PIC-compatible by being a two
  1.2485 +	dimentional array rather than array of pointers.
  1.2486 +
  1.2487 +
  1.2488 +	* src/autofit/aflatin2.h declare af_latin2_script_class
  1.2489 +	using macros from aftypes.h,
  1.2490 +	when FT_CONFIG_OPTION_PIC is defined init function will be declared.
  1.2491 +	* src/autofit/aflatin2.c when FT_CONFIG_OPTION_PIC is defined
  1.2492 +	af_latin2_script_class struct will have function to init it instead of
  1.2493 +	being allocated in the global scope.
  1.2494 +	Change af_latin2_blue_chars to be PIC-compatible by being a two
  1.2495 +	dimentional array rather than array of pointers.
  1.2496 +
  1.2497 +	* src/autofit/afglobal.c when FT_CONFIG_OPTION_PIC is defined
  1.2498 +	af_script_classes array initialization was moved to afpic.c and
  1.2499 +	is later refered using macros defeined in afpic.h.
  1.2500 +
  1.2501 +	New Files:
  1.2502 +	* src/autofit/afpic.h declare struct to hold PIC globals for autofit
  1.2503 +	module and macros to access them.
  1.2504 +	* src/autofit/afpic.c implement functions to allocate, destroy and
  1.2505 +	initialize PIC globals for autofit module.
  1.2506 +
  1.2507 +	* src/autofit/autofit.c add new file to build: afpic.c.
  1.2508 +	* src/autofit/jamfile add new files to FT2_MULTI build: afpic.c.
  1.2509 +
  1.2510 +2009-04-05  Oran Agra  <oran@monfort.co.il>
  1.2511 +
  1.2512 +	Position Independent Code (PIC) support in pshinter module.
  1.2513 +
  1.2514 +	* include/freetype/internal/pshints.h add macros to init
  1.2515 +	instances of PSHinter_Interface.
  1.2516 +
  1.2517 +	* src/pshinter/pshmod.h declare pshinter_module_class
  1.2518 +	using macros from ftmodapi.h,
  1.2519 +	when FT_CONFIG_OPTION_PIC is defined create and destroy
  1.2520 +	functions will be declared.
  1.2521 +	* src/pshinter/pshmod.c when FT_CONFIG_OPTION_PIC is defined
  1.2522 +	pshinter_interface and pshinter_module_class structs
  1.2523 +	will have functions to init or create and destroy them
  1.2524 +	instead of being allocated in the global scope.
  1.2525 +	And macros will be used from pshpic.h in order to access them.
  1.2526 +
  1.2527 +	New Files:
  1.2528 +	* src/pshinter/pshpic.h declare struct to hold PIC globals for pshinter
  1.2529 +	module and macros to access them.
  1.2530 +	* src/pshinter/pshpic.c implement functions to allocate, destroy and
  1.2531 +	initialize PIC globals for pshinter module.
  1.2532 +
  1.2533 +	* src/pshinter/pshinter.c add new file to build: pshpic.c.
  1.2534 +	* src/pshinter/jamfile add new files to FT2_MULTI build: pshpic.c.
  1.2535 +
  1.2536 +2009-04-05  Oran Agra  <oran@monfort.co.il>
  1.2537 +
  1.2538 +	Position Independent Code (PIC) support in psnames module.
  1.2539 +
  1.2540 +	* include/freetype/internal/services/svpscmap.h add macros to init
  1.2541 +	instances of FT_Service_PsCMapsRec.
  1.2542 +
  1.2543 +	* src/psnames/psmodule.h declare psnames_module_class
  1.2544 +	using macros from ftmodapi.h,
  1.2545 +	when FT_CONFIG_OPTION_PIC is defined create and destroy
  1.2546 +	functions will be declared.
  1.2547 +	* src/psnames/psmodule.c when FT_CONFIG_OPTION_PIC is defined
  1.2548 +	pscmaps_interface and pscmaps_services structs
  1.2549 +	and psnames_module_class array
  1.2550 +	will have functions to init or create and destroy them
  1.2551 +	instead of being allocated in the global scope.
  1.2552 +	And macros will be used from pspic.h in order to access them.
  1.2553 +
  1.2554 +	New Files:
  1.2555 +	* src/psnames/pspic.h declare struct to hold PIC globals for psnames
  1.2556 +	module and macros to access them.
  1.2557 +	* src/psnames/pspic.c implement functions to allocate, destroy and
  1.2558 +	initialize PIC globals for psnames module.
  1.2559 +
  1.2560 +	* src/psnames/psnames.c add new file to build: pspic.c.
  1.2561 +	* src/psnames/jamfile add new files to FT2_MULTI build: pspic.c.
  1.2562 +
  1.2563 +2009-04-05  Oran Agra  <oran@monfort.co.il>
  1.2564 +
  1.2565 +	Position Independent Code (PIC) support in raster renderer.
  1.2566 +
  1.2567 +	* src/raster/ftrend1.h declare ft_raster1_renderer_class
  1.2568 +	and ft_raster5_renderer_class
  1.2569 +	using macros from ftrender.h,
  1.2570 +	when FT_CONFIG_OPTION_PIC is defined create and destroy
  1.2571 +	functions will be declared.
  1.2572 +	* src/smooth/ftrend1.c when FT_CONFIG_OPTION_PIC is defined
  1.2573 +	ft_raster1_renderer_class and ft_raster5_renderer_class structs
  1.2574 +	will have functions to init or create and destroy them
  1.2575 +	instead of being allocated in the global scope.
  1.2576 +	Macros will be used from rastpic.h in order to access
  1.2577 +	ft_standard_raster from the pic_container (allocated in ftraster.c).
  1.2578 +	In ft_raster1_render when PIC is enabled, the last letter of
  1.2579 +	module_name is used to verfy the renderer class rather than the
  1.2580 +	class pointer.
  1.2581 +
  1.2582 +	* src/raster/ftraster.c when FT_CONFIG_OPTION_PIC is defined
  1.2583 +	ft_standard_raster struct will have function to init it
  1.2584 +	instead of being allocated in the global scope.
  1.2585 +
  1.2586 +	New Files:
  1.2587 +	* src/raster/rastpic.h declare struct to hold PIC globals for raster
  1.2588 +	renderer and macros to access them.
  1.2589 +	* src/raster/rastpic.c implement functions to allocate, destroy and
  1.2590 +	initialize PIC globals for raster renderer.
  1.2591 +
  1.2592 +	* src/raster/raster.c add new file to build: rastpic.c.
  1.2593 +	* src/raster/jamfile add new files to FT2_MULTI build: rastpic.c.
  1.2594 +
  1.2595 +2009-04-05  Oran Agra  <oran@monfort.co.il>
  1.2596 +
  1.2597 +	Position Independent Code (PIC) support in smooth renderer.
  1.2598 +
  1.2599 +	* src/smooth/ftsmooth.h declare ft_smooth_renderer_class,
  1.2600 +	ft_smooth_lcd_renderer_class and ft_smooth_lcd_v_renderer_class
  1.2601 +	using macros from ftrender.h,
  1.2602 +	when FT_CONFIG_OPTION_PIC is defined create and destroy
  1.2603 +	functions will be declared.
  1.2604 +	* src/smooth/ftsmooth.c when FT_CONFIG_OPTION_PIC is defined
  1.2605 +	the following structs:
  1.2606 +	ft_smooth_renderer_class, ft_smooth_lcd_renderer_class
  1.2607 +	and ft_smooth_lcd_v_renderer_class
  1.2608 +	will have functions to init or create and destroy them
  1.2609 +	instead of being allocated in the global scope.
  1.2610 +	And macros will be used from ftspic.h in order to access
  1.2611 +	ft_grays_raster from the pic_container (allocated in ftgrays.c).
  1.2612 +
  1.2613 +	* src/smooth/ftgrays.h include FT_CONFIG_CONFIG_H
  1.2614 +	* src/smooth/ftgrays.c when FT_CONFIG_OPTION_PIC is NOT defined
  1.2615 +	func_interface was moved from gray_convert_glyph_inner function
  1.2616 +	to the global scope.
  1.2617 +	When FT_CONFIG_OPTION_PIC is defined
  1.2618 +	func_interface and ft_grays_raster structs
  1.2619 +	will have functions to init them
  1.2620 +	instead of being allocated in the global scope.
  1.2621 +	And func_interface will be allocated on the stack of
  1.2622 +	gray_convert_glyph_inner.
  1.2623 +
  1.2624 +	New Files:
  1.2625 +	* src/smooth/ftspic.h declare struct to hold PIC globals for smooth
  1.2626 +	renderer and macros to access them.
  1.2627 +	* src/smooth/ftspic.c implement functions to allocate, destroy and
  1.2628 +	initialize PIC globals for smooth renderer.
  1.2629 +
  1.2630 +	* src/smooth/smooth.c add new file to build: ftspic.c.
  1.2631 +	* src/smooth/jamfile add new files to FT2_MULTI build: ftspic.c.
  1.2632 +
  1.2633 +2009-04-05  Oran Agra  <oran@monfort.co.il>
  1.2634 +
  1.2635 +	Position Independent Code (PIC) support in cff driver.
  1.2636 +
  1.2637 +	* include/freetype/internal/services/svcid.h add macros to init
  1.2638 +	instances of FT_Service_CIDRec.
  1.2639 +	* include/freetype/internal/services/svpsinfo.h add macros to init
  1.2640 +	instances of FT_Service_PsInfoRec.
  1.2641 +
  1.2642 +	* src/cff/cffcmap.h declare cff_cmap_encoding_class_rec
  1.2643 +	and cff_cmap_unicode_class_rec using macros from
  1.2644 +	ftobjs.h, when FT_CONFIG_OPTION_PIC is defined create and destroy
  1.2645 +	functions will be declared.
  1.2646 +	* src/cff/cffcmap.c when FT_CONFIG_OPTION_PIC is defined
  1.2647 +	the following structs:
  1.2648 +	cff_cmap_encoding_class_rec and cff_cmap_unicode_class_rec
  1.2649 +	will have functions to init or create and destroy them
  1.2650 +	instead of being allocated in the global scope.
  1.2651 +
  1.2652 +	* src/cff/cffdrivr.h declare cff_driver_class using macros from
  1.2653 +	ftdriver.h, when FT_CONFIG_OPTION_PIC is defined create and destroy
  1.2654 +	functions will be declared.
  1.2655 +	* src/cff/cffdrivr.c when FT_CONFIG_OPTION_PIC is defined
  1.2656 +	the following structs:
  1.2657 +	cff_service_glyph_dict, cff_service_ps_info, cff_service_ps_name
  1.2658 +	cff_service_get_cmap_info, cff_service_cid_info, cff_driver_class,
  1.2659 +	and cff_services array
  1.2660 +	will have functions to init or create and destroy them
  1.2661 +	instead of being allocated in the global scope.
  1.2662 +	And macros will be used from cffpic.h in order to access them
  1.2663 +	from the pic_container.
  1.2664 +	Use macros from cffpic.h in order to access the
  1.2665 +	structs allocated in cffcmap.c
  1.2666 +
  1.2667 +	* src/cff/cffobjs.c Use macros from cffpic.h in order to access the
  1.2668 +	structs allocated in cffcmap.c
  1.2669 +
  1.2670 +	* src/cff/parser.c when FT_CONFIG_OPTION_PIC is defined
  1.2671 +	implement functions to create and destroy cff_field_handlers array
  1.2672 +	instead of being allocated in the global scope.
  1.2673 +	And macros will be used from cffpic.h in order to access it
  1.2674 +	from the pic_container.
  1.2675 +
  1.2676 +	New Files:
  1.2677 +	* src/cff/cffpic.h declare struct to hold PIC globals for cff
  1.2678 +	driver and macros to access them.
  1.2679 +	* src/cff/cffpic.c implement functions to allocate, destroy and
  1.2680 +	initialize PIC globals for cff driver.
  1.2681 +
  1.2682 +	* src/cff/cff.c add new file to build: cffpic.c.
  1.2683 +	* src/cff/jamfile add new files to FT2_MULTI build: cffpic.c.
  1.2684 +
  1.2685 +2009-04-05  Oran Agra  <oran@monfort.co.il>
  1.2686 +
  1.2687 +	Position Independent Code (PIC) support in sfnt driver.
  1.2688 +
  1.2689 +	* include/freetype/internal/services/svbdf.h add macros to init
  1.2690 +	instances of FT_Service_BDFRec.
  1.2691 +	* include/freetype/internal/services/svgldict.h add macros to init
  1.2692 +	instances of FT_Service_GlyphDictRec.
  1.2693 +	* include/freetype/internal/services/svpostnm.h add macros to init
  1.2694 +	instances of FT_Service_PsFontNameRec.
  1.2695 +	* include/freetype/internal/services/svsfnt.h add macros to init
  1.2696 +	instances of FT_Service_SFNT_TableRec.
  1.2697 +	* include/freetype/internal/services/svttcmap.h add macros to init
  1.2698 +	instances of FT_Service_TTCMapsRec.
  1.2699 +	* include/freetype/internal/sfnt.h add macros to init
  1.2700 +	instances of SFNT_Interface.
  1.2701 +
  1.2702 +	* src/sfnt/sfdriver.h declare sfnt_module_class using macros from
  1.2703 +	ftmodapi.h, when FT_CONFIG_OPTION_PIC is defined create and destroy
  1.2704 +	functions will be declared.
  1.2705 +	* src/sfnt/sfdriver.c when FT_CONFIG_OPTION_PIC is defined
  1.2706 +	the following structs:
  1.2707 +	sfnt_service_sfnt_table, sfnt_service_glyph_dict, sfnt_service_ps_name
  1.2708 +	tt_service_get_cmap_info, sfnt_service_bdf, sfnt_interface,
  1.2709 +	sfnt_module_class, and sfnt_services array
  1.2710 +	will have functions to init or create and destroy them
  1.2711 +	instead of being allocated in the global scope.
  1.2712 +	And macros will be used from sfntpic.h in order to access them
  1.2713 +	from the pic_container.
  1.2714 +
  1.2715 +	* src/sfnt/ttcmap.h add macros to init
  1.2716 +	instances of TT_CMap_ClassRec.
  1.2717 +	* src/sfnt/ttcmap.c when FT_CONFIG_OPTION_PIC is defined
  1.2718 +	the following structs:
  1.2719 +	tt_cmap0_class_rec, tt_cmap2_class_rec, tt_cmap4_class_rec
  1.2720 +	tt_cmap6_class_rec, tt_cmap8_class_rec, tt_cmap10_class_rec,
  1.2721 +	tt_cmap12_class_rec, tt_cmap14_class_rec and tt_cmap_classes array
  1.2722 +	will have functions to init or create and destroy them
  1.2723 +	instead of being allocated in the global scope.
  1.2724 +	And macros will be used from sfntpic.h in order to access them
  1.2725 +	from the pic_container.
  1.2726 +	The content of tt_cmap_classes is now described in the
  1.2727 +	new file 'ttcmapc.h'.
  1.2728 +
  1.2729 +	New Files:
  1.2730 +	* src/sfnt/sfntpic.h declare struct to hold PIC globals for sfnt
  1.2731 +	driver and macros to access them.
  1.2732 +	* src/sfnt/sfntpic.c implement functions to allocate, destroy and
  1.2733 +	initialize PIC globals for sfnt driver.
  1.2734 +	* src/sfnt/ttcmapc.h describing the content of
  1.2735 +	tt_cmap_classes allocated in ttcmap.c
  1.2736 +
  1.2737 +	* src/sfnt/sfnt.c add new file to build: sfntpic.c.
  1.2738 +	* src/sfnt/jamfile add new files to FT2_MULTI build: sfntpic.c.
  1.2739 +
  1.2740 +2009-04-05  Oran Agra  <oran@monfort.co.il>
  1.2741 +
  1.2742 +	Position Independent Code (PIC) support in truetype driver.
  1.2743 +
  1.2744 +	* include/freetype/internal/services/svmm.h add macros to init
  1.2745 +	instances of FT_Service_MultiMastersRec.
  1.2746 +	* include/freetype/internal/services/svttglyf.h add macros to init
  1.2747 +	instances of FT_Service_TTGlyfRec.
  1.2748 +
  1.2749 +	* src/truetype/ttdriver.h declare tt_driver_class using macros from
  1.2750 +	ftdriver.h, when FT_CONFIG_OPTION_PIC is defined create and destroy
  1.2751 +	functions will be declared.
  1.2752 +	* src/truetype/ttdriver.c when FT_CONFIG_OPTION_PIC is defined
  1.2753 +	the following structs:
  1.2754 +	tt_service_gx_multi_masters, tt_service_truetype_glyf, tt_driver_class
  1.2755 +	and tt_services array,
  1.2756 +	will have functions to init or create and destroy them
  1.2757 +	instead of being allocated in the global scope.
  1.2758 +	And macros will be used from ttpic.h in order to access them
  1.2759 +	from the pic_container.
  1.2760 +	* src/truetype/ttobjs.c change trick_names array to be
  1.2761 +	PIC-compatible by being a two dimentional array rather than array
  1.2762 +	of pointers.
  1.2763 +
  1.2764 +	New Files:
  1.2765 +	* src/truetype/ttpic.h declare struct to hold PIC globals for truetype
  1.2766 +	driver and macros to access them.
  1.2767 +	* src/truetype/ttpic.c implement functions to allocate, destroy and
  1.2768 +	initialize PIC globals for truetype driver.
  1.2769 +
  1.2770 +	* src/truetype/truetype.c add new file to build: ttpic.c.
  1.2771 +	* src/truetype/jamfile add new files to FT2_MULTI build: ttpic.c.
  1.2772 +
  1.2773 +2009-04-05  Oran Agra  <oran@monfort.co.il>
  1.2774 +
  1.2775 +	Position Independent Code (PIC) support and infrastructure in base.
  1.2776 +
  1.2777 +	* include/freetype/config/ftoption.h add FT_CONFIG_OPTION_PIC
  1.2778 +	* include/freetype/internal/ftobjs.h Add pic_container member to
  1.2779 +	FT_LibraryRec.
  1.2780 +	Add macros to declare and init instances of FT_CMap_ClassRec.
  1.2781 +	Add macros to init instances of FT_Outline_Funcs and FT_Raster_Funcs.
  1.2782 +	Add macros to declare, allocate and initialize modules
  1.2783 +	(FT_Module_Class).
  1.2784 +	Add macros to declare, allocate and initialize renderers
  1.2785 +	(FT_Renderer_Class).
  1.2786 +	Add macro to init instances of FT_Glyph_Class.
  1.2787 +	Add macros to declare, allocate and initialize drivers
  1.2788 +	(FT_Driver_ClassRec).
  1.2789 +	* include/freetype/internal/ftpic.h new file to declare the
  1.2790 +	FT_PIC_Container struct and the functions to allocate and detroy it.
  1.2791 +	* include/freetype/internal/ftserv.h add macros to allocate and
  1.2792 +	destory arrays of FT_ServiceDescRec.
  1.2793 +	* include/freetype/internal/internal.h define macro to include
  1.2794 +	ftpic.h.
  1.2795 +
  1.2796 +	New Files:
  1.2797 +	* src/base/ftpic.c implement functions to allocate and destory the
  1.2798 +	global pic_container.
  1.2799 +	* src/base/basepic.h declare struct to hold PIC globals for base and
  1.2800 +	macros to access them.
  1.2801 +	* src/base/basepic.c implement functions to allocate, destroy and
  1.2802 +	initialize PIC globals for base.
  1.2803 +
  1.2804 +	* src/base/ftinit.c when FT_CONFIG_OPTION_PIC is defined implement
  1.2805 +	functions that allocate and destroy ft_default_modules according to
  1.2806 +	FT_CONFIG_MODULES_H in the pic_container instead of the global scope
  1.2807 +	and use macro from basepic.h to access it.
  1.2808 +	* src/base/ftobjs.c add calls to the functions that allocate and
  1.2809 +	destroy the global pic_container when the library is created and
  1.2810 +	destroyed.
  1.2811 +
  1.2812 +	* src/base/jamfile add new files to FT2_MULTI build:
  1.2813 +	ftpic.c and basepic.c.
  1.2814 +	* src/base/ftbase.c add new files to build:
  1.2815 +	ftpic.c and basepic.c.
  1.2816 +
  1.2817 +	* src/base/ftglyph.c when FT_CONFIG_OPTION_PIC is defined
  1.2818 +	ft_bitmap_glyph_class and ft_outline_glyph_class will be allocated
  1.2819 +	in the pic_container instead of the global scope and use macros from
  1.2820 + 	basepic.h to access them.
  1.2821 +	* src/base/ftbbox.c allocate bbox_interface stract on the stack
  1.2822 +	instead of the global scope when FT_CONFIG_OPTION_PIC is defined.
  1.2823 +	* src/base/ftstroke.c access ft_outline_glyph_class allocated in
  1.2824 +	ftglyph.c via macros from basepic.h
  1.2825 +
  1.2826 +2009-04-05  Oran Agra  <oran@monfort.co.il>
  1.2827 +
  1.2828 +	Preparing changes in cff parser later needed for PIC version.
  1.2829 +
  1.2830 +	* src/cff/cffload.c, src/cff/cffload.h, src/cff/cffobjs.c,
  1.2831 +	src/cff/cffparse.c, src/cff/cffparse.h: Add library pointer to
  1.2832 +	'CFF_ParserRec' set by `cff_parser_init'.
  1.2833 +	Route library pointer from 'cff_face_init' to 'cff_subfont_load'
  1.2834 +	for `cff_parser_init'.
  1.2835 +
  1.2836 +	* src/cff/cffparse.c (CFF_Field_Handler): Move it to...
  1.2837 +	* src/cff/cffparse.h: This file, to be used by other C files.
  1.2838 +
  1.2839 +2009-04-05  Oran Agra  <oran@monfort.co.il>
  1.2840 +
  1.2841 +	Minor change in ftstroke.c.
  1.2842 +
  1.2843 +	* src/base/ftstroke.c (FT_StrokerRec): Replace `memory' member with
  1.2844 +	`library' needed for PIC version.
  1.2845 +	Update all callers.
  1.2846 +
  1.2847 +2009-04-04  Werner Lemberg  <wl@gnu.org>
  1.2848 +
  1.2849 +	ftnames.c -> ftsnames.c
  1.2850 +
  1.2851 +	* src/base/ftnames.c: Rename to...
  1.2852 +	* src/base/ftsnames.c: This.
  1.2853 +	* src/base/Jamfile, src/base/rules.mk, src/base/ftbase.c: Updated.
  1.2854 +
  1.2855 +2009-04-04  Werner Lemberg  <wl@gnu.org>
  1.2856 +
  1.2857 +	Add support for cmap type 13.
  1.2858 +
  1.2859 +	* devel/ftoption.h, include/freetype/config/ftoption.h
  1.2860 +	(TT_CONFIG_CMAP_FORMAT_13): New macro.
  1.2861 +
  1.2862 +	* src/sfnt/ttcmap.c (TT_CMap13Rec, tt_cmap13_init,
  1.2863 +	tt_cmap13_validate, tt_cmap13_char_index, tt_cmap13_char_next,
  1.2864 +	tt_cmap13_get_info, tt_cmap13_char_map_def_binary,
  1.2865 +	tt_cmap14_class_rec): New functions and structures for cmap 13
  1.2866 +	support.
  1.2867 +	(tt_cmap_classes): Register tt_cmap13_class_rec.
  1.2868 +
  1.2869 +	* docs/CHANGES: Mention cmap 13 support.
  1.2870 +
  1.2871 +2009-04-01  Werner Lemberg  <wl@gnu.org>
  1.2872 +
  1.2873 +	Ignore empty contours in CFF glyphs.
  1.2874 +
  1.2875 +	Problem reported by Albert Astals Cid <aacid@kde.org>.
  1.2876 +
  1.2877 +	* src/cff/cffgload.c (cff_builder_close_contour): Synchronize with
  1.2878 +	t1_builder_close_contour.
  1.2879 +
  1.2880 +2009-03-21  Werner Lemberg  <wl@gnu.org>
  1.2881 +
  1.2882 +	Another redundant header inclusion.
  1.2883 +
  1.2884 +	* src/truetype/ttgxvar.c: Fix Ghostscript Coverity issue #4041.
  1.2885 +
  1.2886 +2009-03-21  Werner Lemberg  <wl@gnu.org>
  1.2887 +
  1.2888 +	Remove redundant header inclusions.
  1.2889 +
  1.2890 +	This covers many Ghostscript Coverity issues.
  1.2891 +
  1.2892 +	* src/*: Do it.
  1.2893 +
  1.2894 +2009-03-21  Werner Lemberg  <wl@gnu.org>
  1.2895 +
  1.2896 +	Fix Ghostscript Coverity issue #3904.
  1.2897 +
  1.2898 +	* src/truetype/ttgxvar.c (ft_var_readpackedpoints): Protect against
  1.2899 +	invalid values of `runcnt'.
  1.2900 +
  1.2901 +2009-03-20  Werner Lemberg  <wl@gnu.org>
  1.2902 +
  1.2903 +	Fix `make multi' run.
  1.2904 +
  1.2905 +	* src/smooth/ftsmooth.h: Include FT_INTERNAL_DEBUG_H.
  1.2906 +
  1.2907 +2009-03-20  Werner Lemberg  <wl@gnu.org>
  1.2908 +
  1.2909 +	Fix Savannah bug #25923.
  1.2910 +
  1.2911 +	* src/cache/ftccmap.c (FTC_CMAP_HASH): Fix typo.
  1.2912 +
  1.2913 +2009-03-20  Werner Lemberg  <wl@gnu.org>
  1.2914 +
  1.2915 +	Protect against too large glyphs.
  1.2916 +
  1.2917 +	Problem reported by Tavis Ormandy <taviso@google.com>.
  1.2918 +
  1.2919 +	* src/smooth/ftsmooth.c (ft_smooth_render_generic): Don't allow
  1.2920 +	`pitch' or `height' to be larger than 0xFFFF.
  1.2921 +
  1.2922 +2009-03-20  Werner Lemberg  <wl@gnu.org>
  1.2923 +	    Tavis Ormandy  <taviso@google.com>
  1.2924 +
  1.2925 +	Fix validation for various cmap table formats.
  1.2926 +
  1.2927 +	* src/sfnt/ttcmap.c (tt_cmap8_validate, tt_cmap10_validate,
  1.2928 +	tt_cmap12_validate): Check `length' correctly.
  1.2929 +	(tt_cmap_14_validate): Check `length' and `numMappings' correctly.
  1.2930 +
  1.2931 +2009-03-20  Werner Lemberg  <wl@gnu.org>
  1.2932 +
  1.2933 +	Protect against malformed compressed data.
  1.2934 +
  1.2935 +	* src/lzw/ftzopen.c (ft_lzwstate_io): Test whether `state->prefix' is
  1.2936 +	zero.
  1.2937 +
  1.2938 +2009-03-20  Werner Lemberg  <wl@gnu.org>
  1.2939 +
  1.2940 +	Protect against invalid SID values in CFFs.
  1.2941 +
  1.2942 +	Problem reported by Tavis Ormandy <taviso@google.com>.
  1.2943 +
  1.2944 +	* src/cff/cffload.c (cff_charset_load): Reject SID values larger
  1.2945 +	than 64999.
  1.2946 +
  1.2947 +2009-03-19  Vincent Richomme  <richom.v@free.fr>
  1.2948 +
  1.2949 +	Update WinCE Visual C project files.
  1.2950 +
  1.2951 +	* builds/wince/vc2005-ce/freetype.vcproj,
  1.2952 +	builds/wince/vc2008-ce/freetype.vcproj: Add missing base extension
  1.2953 +	files.
  1.2954 +
  1.2955 +2009-03-19  Werner Lemberg  <wl@gnu.org>
  1.2956 +
  1.2957 +	Remove unused Win32 code.
  1.2958 +
  1.2959 +	* builds/wince/ftdebug.c: Remove code guarded with `!_WIN32_WCE'.
  1.2960 +	Since Win32 is handled separately this is no longer needed.
  1.2961 +
  1.2962 +2009-03-19  Vincent Richomme  <richom.v@free.fr>
  1.2963 +
  1.2964 +	Make `gzip' module compile on WinCE.
  1.2965 +
  1.2966 +	* src/gzip/zconf.h [_WIN32_WCE]: Define NO_ERRNO_H.
  1.2967 +
  1.2968 +2009-03-19  Werner Lemberg  <wl@gnu.org>
  1.2969 +
  1.2970 +	Remove unused WinCE code.
  1.2971 +
  1.2972 +	* builds/win32/ftdebug.c: Remove code guarded with `_WIN32_WCE'.
  1.2973 +	Since WinCE is handled separately this is no longer needed.
  1.2974 +
  1.2975 +2009-03-16  Werner Lemberg  <wl@gnu.org>
  1.2976 +
  1.2977 +	docmaker: Don't ignore single-line code blocks.
  1.2978 +
  1.2979 +	* src/tools/docmaker/content.py (DocBlock::_init__): Fix change from
  1.2980 +	2009-01-31.
  1.2981 +
  1.2982 +2009-03-15  Steve Langasek  <steve.langasek@canonical.com>
  1.2983 +
  1.2984 +	Use __asm__ for declaring assembly instead of asm.
  1.2985 +
  1.2986 +	* builds/unix/ftconfig.in (FT_MulFix_arm): Use __asm__ instead of
  1.2987 +	asm on arm, fixing a build failure on armel with -pedantic.
  1.2988 +
  1.2989 +2009-03-14  Werner Lemberg  <wl@gnu.org>
  1.2990 +
  1.2991 +	Fix valgrind warning.
  1.2992 +
  1.2993 +	* src/sfnt/ttsbit0.c (tt_sbit_decoder_load_bit_aligned): Don't read
  1.2994 +	past the end of the frame.
  1.2995 +
  1.2996 +2009-03-12  Werner Lemberg  <wl@gnu.org>
  1.2997 +
  1.2998 +	* Version 2.3.9 released.
  1.2999 +	=========================
  1.3000 +
  1.3001 +
  1.3002 +	Tag sources with `VER-2-3-9'.
  1.3003 +
  1.3004 +2009-03-12  Werner Lemberg  <wl@gnu.org>
  1.3005 +
  1.3006 +	* builds/unix/freetype2.in: Move @FT2_EXTRA_LIBS@ to `Libs.private'.
  1.3007 +
  1.3008 +2009-03-12  Werner Lemberg  <wl@gnu.org>
  1.3009 +
  1.3010 +	Fix some FreeType Coverity issues as reported for Ghostscript.
  1.3011 +
  1.3012 +	* src/base/ftobjs.c (FT_New_Face, FT_New_Memory_Face): Initialize
  1.3013 +	`args.stream' (#3874, #3875).
  1.3014 +	(open_face_PS_from_sfnt_stream): Improve error management (#3786).
  1.3015 +	* src/base/ftmm.c (ft_face_get_mm_service): Fix check of `aservice'
  1.3016 +	(#3870).
  1.3017 +	* src/base/ftstroke.c (ft_stroke_border_get_counts): Remove dead
  1.3018 +	code (#3790).
  1.3019 +	* src/base/ftrfork.c (raccess_guess_apple_generic): Check error
  1.3020 +	value of `FT_Stream_Skip' (#3784).
  1.3021 +
  1.3022 +	* src/type1/t1gload.c (T1_Load_Glyph): Check `size' before accessing
  1.3023 +	it (#3872)
  1.3024 +
  1.3025 +	* src/pcf/pcfdrivr.c (PCF_Glyph_Load): Check `face' before accessing
  1.3026 +	it (#3871).
  1.3027 +	* src/pcf/pcfread.c (pcf_get_metrics): Handle return value of
  1.3028 +	`pcf_get_metric' (#3789, #3782).
  1.3029 +	(pcf_get_properties): Use FT_STREAM_SKIP (#3783).
  1.3030 +
  1.3031 +	* src/cache/ftcmanag.c (FTC_Manager_RegisterCache): Fix check of
  1.3032 +	`acache' (#3797)
  1.3033 +
  1.3034 +	* src/cff/cffdrivr.c (cff_ps_get_font_info): Fix check of `cff'
  1.3035 +	(#3796).
  1.3036 +	* src/cff/cffgload.c (cff_decoder_prepare): Check `size' (#3795).
  1.3037 +	* src/cff/cffload.c (cff_index_get_pointers): Add comment (#3794).
  1.3038 +
  1.3039 +	* src/bdf/bdflib.c (_bdf_add_property): Check `fp->value.atom'
  1.3040 +	(#3793).
  1.3041 +	(_bdf_parse_start): Add comment (#3792).
  1.3042 +
  1.3043 +	* src/raster/ftraster.c (Finalize_Profile_Table): Check
  1.3044 +	`ras.fProfile' (#3791).
  1.3045 +
  1.3046 +	* src/sfnt/ttsbit.c (Load_SBit_Image): Use FT_STREAM_SKIP (#3785).
  1.3047 +
  1.3048 +	* src/gzip/ftgzip.c (ft_gzip_get_uncompressed_size): Properly ignore
  1.3049 +	seek error (#3781).
  1.3050 +
  1.3051 +2009-03-11  Michael Toftdal  <toftdal@gmail.com>
  1.3052 +
  1.3053 +	Extend CID service functions to handle CID-keyed CFFs as CID fonts.
  1.3054 +
  1.3055 +	* include/freetype/ftcid.h (FT_Get_CID_Is_Internally_CID_keyed,
  1.3056 +	FT_Get_CID_From_Glyph_Index): New functions.
  1.3057 +
  1.3058 +	* include/freetype/internal/services/svcid.h
  1.3059 +	(FT_CID_GetIsInternallyCIDKeyedFunc,
  1.3060 +	FT_CID_GetCIDFromGlyphIndexFunc): New function typedefs.
  1.3061 +	(CID Service): Use them.
  1.3062 +
  1.3063 +	* src/base/ftcid.c: Include FT_CID_H.
  1.3064 +	(FT_Get_CID_Is_Internally_CID_keyed, FT_Get_CID_From_Glyph_Index):
  1.3065 +	New functions.
  1.3066 +
  1.3067 +	* src/cff/cffdrivr.c (cff_get_is_cid, cff_get_cid_from_glyph_index):
  1.3068 +	New functions.
  1.3069 +	(cff_service_cid_info): Add them.
  1.3070 +	* src/cff/cffload.c (cff_font_load): Don't free `font->charset.sids'
  1.3071 +	-- it is needed for access as a CID-keyed font.  It gets deleted
  1.3072 +	later on.
  1.3073 +
  1.3074 +	* src/cid/cidriver.c (cid_get_is_cid, cid_get_cid_from_glyph_index):
  1.3075 +	New functions.
  1.3076 +	(cid_service_cid_info): Add them.
  1.3077 +
  1.3078 +	* docs/CHANGES: Updated.
  1.3079 +
  1.3080 +2009-03-11  Bram Tassyns  <bramt@enfocus.be>
  1.3081 +
  1.3082 +	Fix Savannah bug #25597.
  1.3083 +
  1.3084 +	* src/cff/cffparse.c (cff_parse_real): Don't allow fraction_length
  1.3085 +	to become larger than 9.
  1.3086 +
  1.3087 +2009-03-11  Werner Lemberg  <wl@gnu.org>
  1.3088 +
  1.3089 +	Fix Savannah bug #25814.
  1.3090 +
  1.3091 +	* builds/unix/freetype2.in: As suggested in the bug report, move
  1.3092 +	@LIBZ@ to `Libs.private'.
  1.3093 +
  1.3094 +2009-03-11  Werner Lemberg  <wl@gnu.org>
  1.3095 +
  1.3096 +	Fix Savannah bug #25781.
  1.3097 +	We now simply check for a valid `offset', no longer handling `delta
  1.3098 +	= 1' specially.
  1.3099 +
  1.3100 +	* src/sfnt/ttcmap.c (tt_cmap4_validate): Don't check `delta' for
  1.3101 +	last segment.
  1.3102 +	(tt_cmap4_set_range, tt_cmap4_char_map_linear,
  1.3103 +	tt_cmap4_char_map_binary): Check offset.
  1.3104 +
  1.3105 +2009-03-11  Werner Lemberg  <wl@gnu.org>
  1.3106 +
  1.3107 +	* src/base/Jamfile: Fix handling of ftadvanc.c.
  1.3108 +	Reported by Oran Agra <oran@monfort.co.il>.
  1.3109 +
  1.3110 +2009-03-10  Vincent Richomme  <richom.v@free.fr>
  1.3111 +
  1.3112 +	Restructure Win32 and Wince compiler support.
  1.3113 +
  1.3114 +	* src/builds/win32: Remove files for WinCE.
  1.3115 +	Move VC 2005 support to a separate directory.
  1.3116 +	Add directory for VC 2008 support.
  1.3117 +
  1.3118 +	* src/builds/wince: New directory hierarchy for WinCE compilers
  1.3119 +	(VC 2005 and VC 2008).
  1.3120 +
  1.3121 +2009-03-09  Werner Lemberg  <wl@gnu.org>
  1.3122 +
  1.3123 +	More preparations for 2.3.9 release.
  1.3124 +
  1.3125 +	* docs/CHANGES: Updated.
  1.3126 +
  1.3127 +	* Jamfile, README: s/2.3.8/2.3.9/, s/238/239/.
  1.3128 +
  1.3129 +2009-03-09  Werner Lemberg  <wl@gnu.org>
  1.3130 +
  1.3131 +	* src/sfnt/rules.mk (SFNT_DRV_H): Add ttsbit0.c.
  1.3132 +
  1.3133 +2009-03-09  Alexey Kryukov  <anagnost@yandex.ru>
  1.3134 +
  1.3135 +	Fix handling of EBDT formats 8 and 9 (part 2).
  1.3136 +
  1.3137 +	This patch fixes the following problems in ttsbit0.c:
  1.3138 +
  1.3139 +	. Bitmaps for compound glyphs were never allocated.
  1.3140 +
  1.3141 +	. `SBitDecoder' refused to load metrics if some other metrics have
  1.3142 +	  already been loaded.  This condition certainly makes no sense for
  1.3143 +	  recursive calls, so I've just disabled it.  Another possibility
  1.3144 +	  would be resetting `decoder->metrics_loaded' to false before
  1.3145 +	  loading each composite component.  However, we must restore the
  1.3146 +	  original metrics after finishing the recursion; otherwise we can
  1.3147 +	  get a misaligned glyph.
  1.3148 +
  1.3149 +	. `tt_sbit_decoder_load_bit_aligned' incorrectly handled `x_pos',
  1.3150 +	  causing some glyph components to be shifted too far to the right
  1.3151 +	  (especially noticeable for small sizes).
  1.3152 +
  1.3153 +	Note that support for grayscale bitmaps (not necessarily compound) is
  1.3154 +	completely broken in ttsbit0.c.
  1.3155 +
  1.3156 +	* src/sfnt/tt_sbit_decoder_load_metrics: Always load metrics.
  1.3157 +	(tt_sbit_decoder_load_bit_aligned): Handle `x_pos' correctly in case
  1.3158 +	of `h == height'.
  1.3159 +	(tt_sbit_decoder_load_compound): Reset metrics after loading
  1.3160 +	components.
  1.3161 +	Allocate bitmap.
  1.3162 +
  1.3163 +2009-03-09  Werner Lemberg  <wl@gnu.org>
  1.3164 +
  1.3165 +	* builds/unix/configure.raw (version_info): Set to 9:20:3.
  1.3166 +
  1.3167 +2009-03-03  David Turner  <david@freetype.org>
  1.3168 +
  1.3169 +	Protect SFNT kerning table parser against malformed tables.
  1.3170 +
  1.3171 +	This closes Savannah BUG #25750.
  1.3172 +
  1.3173 +	* src/sfnt/ttkern.c (tt_face_load_kern, tt_face_get_kerning): Fix a
  1.3174 +	bug where a malformed table would be successfully loaded but later
  1.3175 +	crash the engine during parsing.
  1.3176 +
  1.3177 +2009-03-03  David Turner  <david@freetype.org>
  1.3178 +
  1.3179 +	Update documentation and bump version number to 2.3.9.
  1.3180 +
  1.3181 +	* include/freetype/freetype.h: Bump patch version to 9.
  1.3182 +	* docs/CHANGES: Document the ABI break in 2.3.8.
  1.3183 +	* docs/VERSION.DLL: Update version numbers table for 2.3.9.
  1.3184 +
  1.3185 +2009-03-03  David Turner  <david@freetype.org>
  1.3186 +
  1.3187 +	Remove ABI-breaking field in public PS_InfoFontRec definition.
  1.3188 +
  1.3189 +	Instead, we define a new internal PS_FontExtraRec structure to
  1.3190 +	hold the additional field, then place it in various internal
  1.3191 +	positions of the corresponding FT_Face derived objects.
  1.3192 +
  1.3193 +	* include/freetype/t1tables.h (PS_FontInfoRec): Remove the
  1.3194 +	`fs_type' field from the public structure.
  1.3195 +	* include/freetype/internal/psaux.h (T1_FieldLocation): New
  1.3196 +	enumeration `T1_FIELD_LOCATION_FONT_EXTRA'.
  1.3197 +	* include/freetype/internal/t1types.h (PS_FontExtraRec): New
  1.3198 +	structure.
  1.3199 +	(T1_FontRec, CID_FaceRec): Add it.
  1.3200 +
  1.3201 +	* src/cid/cidload.c (cid_load_keyword): Handle
  1.3202 +	T1_FIELD_LOCATION_FONT_EXTRA.
  1.3203 +	* src/cid/cidtoken.h, src/type1/t1tokens.h, src/type42/t42parse.c:
  1.3204 +	Adjust FT_STRUCTURE and T1CODE properly to handle `FSType'.
  1.3205 +	* src/type1/t1load.c (t1_load_keyword): Handle
  1.3206 +	T1_FIELD_LOCATION_FONT_EXTRA.
  1.3207 +
  1.3208 +	* include/freetype/internal/services/svpsinfo.h (PsInfo service):
  1.3209 +	Add `PS_GetFontExtraFunc' function typedef.
  1.3210 +
  1.3211 +	* src/base/ftfstype.c: Include FT_INTERNAL_SERVICE_H and
  1.3212 +	FT_SERVICE_POSTSCRIPT_INFO_H.
  1.3213 +	(FT_Get_FSType_Flags): Use POSTSCRIPT_INFO service.
  1.3214 +
  1.3215 +	* src/cff/cffdrivr.c (cff_service_ps_info): Updated.
  1.3216 +	* src/cid/cidriver.c (cid_ps_get_font_extra): New function.
  1.3217 +	(cid_service_ps_info): Updated.
  1.3218 +	* src/type1/t1driver.c (t1_ps_get_font_extra): New function.
  1.3219 +	(t1_service_ps_info): Updated.
  1.3220 +	* src/type42/t42drivr.c (t42_ps_get_font_extra): New function.
  1.3221 +	(t42_service_ps_info): Updated.
  1.3222 +
  1.3223 +2009-03-02  Alexey Kryukov  <anagnost@yandex.ru>
  1.3224 +
  1.3225 +	Fix handling of EBDT formats 8 and 9.
  1.3226 +
  1.3227 +	The main cycle in `blit_sbit' makes too many iterations: it actually
  1.3228 +	needs the count of lines in the source bitmap rather than in the
  1.3229 +	target image.
  1.3230 +
  1.3231 +	* src/sfnt/ttsbit.c (blit_sbit) [FT_CONFIG_OPTION_OLD_INTERNALS]:
  1.3232 +	Add parameter `source_height' and use it for main loop.
  1.3233 +	(Load_SBit_Single) [FT_CONFIG_OPTION_OLD_INTERNALS]: Updated.
  1.3234 +
  1.3235 +2009-02-23  Werner Lemberg  <wl@gnu.org>
  1.3236 +
  1.3237 +	Fix Savannah bug #25669.
  1.3238 +
  1.3239 +	* src/base/ftadvanc.h (FT_Get_Advances): Fix serious typo.
  1.3240 +
  1.3241 +	* src/base/ftobjs.c (FT_Select_Metrics, FT_Request_Metrics): Fix
  1.3242 +	scaling factor for non-scalable fonts.
  1.3243 +
  1.3244 +	* src/cff/cffdrivr.c (cff_get_advances): Use correct advance width
  1.3245 +	value to prevent incorrect scaling.
  1.3246 +
  1.3247 +	* docs/CHANGES: Document it.
  1.3248 +
  1.3249 +2009-02-15  Matt Godbolt  <matt@godbolt.org>
  1.3250 +
  1.3251 +	Fix Savannah bug #25588.
  1.3252 +
  1.3253 +	* builds/unix/ftconfig.in (FT_MulFix_arm): Use correct syntax for
  1.3254 +	`orr' instruction.
  1.3255 +
  1.3256 +2009-02-11  Werner Lemberg  <wl@gnu.org>
  1.3257 +
  1.3258 +	* src/truetype/ttobjs.c (tt_check_trickyness): Add `DFKaiShu'.
  1.3259 +	Reported by David Bevan <dbevan@emtex.com>.
  1.3260 +
  1.3261 +2009-02-09  Werner Lemberg  <wl@gnu.org>
  1.3262 +
  1.3263 +	Fix Savannah bug #25495.
  1.3264 +
  1.3265 +	* src/sfnt/sfobjs.c (sfnt_load_face): Test for bitmap strikes before
  1.3266 +	setting metrics and bbox values.  This ensures that the check for a
  1.3267 +	font with neither a `glyf' table nor bitmap strikes can be performed
  1.3268 +	early enough to set metrics and bbox values too.
  1.3269 +
  1.3270 +2009-02-04  Werner Lemberg  <wl@gnu.org>
  1.3271 +
  1.3272 +	Fix Savannah bug #25480.
  1.3273 +
  1.3274 +	* builds/unix/freetype-config.in: For --ftversion, don't use $prefix
  1.3275 +	but $includedir.
  1.3276 +
  1.3277 +2009-01-31  Werner Lemberg  <wl@gnu.org>
  1.3278 +
  1.3279 +	Minor docmaker improvements.
  1.3280 +
  1.3281 +	* src/tools/docmaker/content.py (DocBlock::__init__): Ignore empty
  1.3282 +	code blocks.
  1.3283 +
  1.3284 +2009-01-25  Werner Lemberg  <wl@gnu.org>
  1.3285 +
  1.3286 +	Fix SCANCTRL handling in TTFs.
  1.3287 +	Problem reported by Alexey Kryukov <anagnost@yandex.ru>.
  1.3288 +
  1.3289 +	* src/truetype/ttinterp.c (Ins_SCANCTRL): Fix threshold handling.
  1.3290 +
  1.3291 +2009-01-23  Werner Lemberg  <wl@gnu.org>
  1.3292 +
  1.3293 +	Move FT_Get_FSType_Flags to a separate file.
  1.3294 +	Problem reported by Mickey Gabel <mickey@monfort.co.il>.
  1.3295 +
  1.3296 +	* src/base/ftobjs.c (FT_Get_FSType_Flags): Move to...
  1.3297 +	* src/base/ftfstype.c: This new file.
  1.3298 +
  1.3299 +	* modules.cfg (BASE_EXTENSION): Add ftfstype.c.
  1.3300 +
  1.3301 +	* docs/INSTALL.ANY: Updated.
  1.3302 +
  1.3303 +	* builds/mac/*.txt, builds/amiga/*makefile*,
  1.3304 +	builds/win32/{visualc,visualce}/freetype.*, builds/symbian/*:
  1.3305 +	Updated.
  1.3306 +
  1.3307 +2009-01-22  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3308 +
  1.3309 +	* builds/unix/ftsystem.c (FT_Stream_Open): Fix 2 error
  1.3310 +	messages ending without "\n".
  1.3311 +
  1.3312 +2009-01-22  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3313 +
  1.3314 +	Fix Savannah bug #25347.
  1.3315 +
  1.3316 +	* src/base/ftobjs.c (open_face_PS_from_sfnt_stream): Rewind
  1.3317 +	the stream to the original position passed to this function,
  1.3318 +	when ft_lookup_PS_in_sfnt_stream() failed.
  1.3319 +	(Mac_Read_sfnt_Resource): Rewind the stream to the head of
  1.3320 +	sfnt resource body, when open_face_PS_from_sfnt_stream()
  1.3321 +	failed.
  1.3322 +
  1.3323 +2009-01-19  Michael Lotz  <mmlr@mlotz.ch>
  1.3324 +
  1.3325 +	Fix Savannah bug #25355.
  1.3326 +
  1.3327 +	* include/freetype/config/ftconfig.h (FT_MulFix_i386): Make
  1.3328 +	assembler code work with gcc 2.95.3 (as used by the Haiku project).
  1.3329 +	Add `cc' register to the clobber list.
  1.3330 +
  1.3331 +2009-01-18  Werner Lemberg  <wl@gnu.org>
  1.3332 +
  1.3333 +	Protect FT_Get_Next_Char.
  1.3334 +
  1.3335 +	* src/sfnt/ttcmap.c (tt_cmap4_set_range): Apply fix similar to
  1.3336 +	change from 2008-07-22.
  1.3337 +
  1.3338 +	Patch from Ronen Ghoshal <rghoshal@emtex.com>.
  1.3339 +
  1.3340 +2009-01-18  Werner Lemberg  <wl@gnu.org>
  1.3341 +
  1.3342 +	Implement FT_Get_Name_Index for SFNT driver.
  1.3343 +
  1.3344 +	* src/sfnt/sfdriver.c (sfnt_get_name_index): New function.
  1.3345 +	(sfnt_service_glyph_dict): Use it.
  1.3346 +
  1.3347 +	Problem reported by Truc Truong <tructv@necsv.com>.
  1.3348 +
  1.3349 +2009-01-18  Werner Lemberg  <wl@gnu.org>
  1.3350 +
  1.3351 +	* include/freetype/ftstroke.h (FT_Outline_GetInsideBorder): Fix
  1.3352 +	documentation.  Problem reported by Truc Truong <tructv@necsv.com>.
  1.3353 +
  1.3354 +	* docs/CHANGES: Updated.
  1.3355 +
  1.3356 +2009-01-14  Werner Lemberg  <wl@gnu.org>
  1.3357 +
  1.3358 +	* Version 2.3.8 released.
  1.3359 +	=========================
  1.3360 +
  1.3361 +
  1.3362 +	Tag sources with `VER-2-3-8'.
  1.3363 +
  1.3364 +	* docs/VERSION.DLL: Update documentation and bump version number to
  1.3365 +	2.3.8.
  1.3366 +
  1.3367 +	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
  1.3368 +	builds/win32/visualc/freetype.dsp,
  1.3369 +	builds/win32/visualc/freetype.vcproj,
  1.3370 +	builds/win32/visualce/index.html,
  1.3371 +	builds/win32/visualce/freetype.dsp,
  1.3372 +	builds/win32/visualce/freetype.vcproj: s/2.3.7/2.3.8/, s/237/238/.
  1.3373 +
  1.3374 +	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 8.
  1.3375 +
  1.3376 +	* builds/unix/configure.raw (version_info): Set to 9:19:3.
  1.3377 +
  1.3378 +	* docs/release: Updated.
  1.3379 +
  1.3380 +2009-01-14  Werner Lemberg  <wl@gnu.org>
  1.3381 +
  1.3382 +	* builds/toplevel.mk (dist): Compress better.
  1.3383 +
  1.3384 +2009-01-13  Werner Lemberg  <wl@gnu.org>
  1.3385 +
  1.3386 +	* src/base/ftobjs.c (FT_Get_FSType_Flags): Cast for compilation
  1.3387 +	with C++.
  1.3388 +
  1.3389 +2009-01-13  Werner Lemberg  <wl@gnu.org>
  1.3390 +
  1.3391 +	Don't use stdlib.h and friends directly.
  1.3392 +	Reported by Mickey Gabel <mickey@monfort.co.il>.
  1.3393 +
  1.3394 +	* src/base/ftdbgmem.c: s/<stdlib.h>/FT_CONFIG_STANDARD_LIBRARY_H/.
  1.3395 +
  1.3396 +	* src/gzip/ftgzip.c, src/lzw/ftlzw.c, src/raster/ftmisc.h:
  1.3397 +	s/<string.h>/FT_CONFIG_STANDARD_LIBRARY_H/.
  1.3398 +
  1.3399 +	* src/autofit/aftypes.h, src/autofit/afhints.c,
  1.3400 +	src/pshinter/pshalgo.c: s/<stdio.h>/FT_CONFIG_STANDARD_LIBRARY_H/
  1.3401 +
  1.3402 +	* src/lzw/ftlzw.c, src/base/ftdbgmem.c: Don't include stdio.h.
  1.3403 +
  1.3404 +2009-01-12  Werner Lemberg  <wl@gnu.org>
  1.3405 +
  1.3406 +	Avoid compiler warnings.
  1.3407 +
  1.3408 +	* */*: s/do ; while ( 0 )/do { } while ( 0 )/.
  1.3409 +	Reported by Sean McBride <sean@rogue-research.com>.
  1.3410 +
  1.3411 +2009-01-12  Werner Lemberg  <wl@gnu.org>
  1.3412 +
  1.3413 +	Fix stdlib dependencies.
  1.3414 +
  1.3415 +	Problem reported by Mickey Gabel <mickey@monfort.co.il>.
  1.3416 +
  1.3417 +	* include/freetype/config/ftstdlib.h (ft_exit): Removed.  Unused.
  1.3418 +
  1.3419 +	* src/autofit/afhints.c, src/base/ftlcdfil.c, src/smooth/ftsmooth.c:
  1.3420 +	s/memcpy/ft_memcpy/.
  1.3421 +	* src/psaux/t1decode.c: s/memset/ft_memset/, s/memcpy/ft_memcpy/.
  1.3422 +
  1.3423 +2009-01-11  Werner Lemberg  <wl@gnu.org>
  1.3424 +
  1.3425 +	* docs/formats.txt: Add link to PCF specification.
  1.3426 +
  1.3427 +	* include/freetype/ftbdf.h (FT_Get_BDF_Property): Improve
  1.3428 +	documentation.
  1.3429 +
  1.3430 +2009-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3431 +
  1.3432 +	* src/base/ftadvanc.c (_ft_face_scale_advances, FT_Get_Advance,
  1.3433 +	FT_Get_Advances): Change the type of load_flags from FT_UInt32 to
  1.3434 +	FT_Int32, to match with the flags for FT_Load_Glyph().
  1.3435 +	* src/cff/cffdrivr.c (cff_get_advances): Ditto.
  1.3436 +	* src/truetype/ttdriver.c (tt_get_advances): Ditto.
  1.3437 +	* include/freetype/ftadvanc.h (FT_Get_Advance, FT_Get_Advances):
  1.3438 +	Ditto.
  1.3439 +	* include/freetype/internal/ftdriver.h (FT_Face_GetAdvancesFunc):
  1.3440 +	Ditto.
  1.3441 +
  1.3442 +2009-01-09  Daniel Zimmermann  <netzimme@aol.com>
  1.3443 +
  1.3444 +	* src/gxvalid/gxvmort.c (gxv_mort_feature_validate): Fix wrong
  1.3445 +	length check.  From Savannah patch #6682.
  1.3446 +
  1.3447 +2009-01-09  Werner Lemberg  <wl@gnu.org>
  1.3448 +
  1.3449 +	Fix problem with T1_FIELD_{NUM,FIXED}_TABLE2.
  1.3450 +
  1.3451 +	* src/psaux/psobjs.c (ps_parser_load_field_table): Don't handle
  1.3452 +	`count_offset' if it is zero (i.e., unused).  Otherwise, the first
  1.3453 +	element of the structure which holds the data is erroneously
  1.3454 +	modified.  Problem reported by Chi Nguyen <chint@necsv.com>.
  1.3455 +
  1.3456 +2009-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3457 +
  1.3458 +	* src/base/ftadvanc.c (_ft_face_scale_advances, FT_Get_Advance,
  1.3459 +	FT_Get_Advances): Extend the type of load_flags from FT_UInt to
  1.3460 +	FT_UInt32, to pass 32-bit flags on 16bit platforms.
  1.3461 +	* src/cff/cffdrivr.c (cff_get_advances): Ditto.
  1.3462 +	* src/truetype/ttdriver.c (tt_get_advances): Ditto.
  1.3463 +	* include/freetype/ftadvanc.h (FT_Get_Advance, FT_Get_Advances):
  1.3464 +	Ditto.
  1.3465 +	* include/freetype/internal/ftdriver.h (FT_Face_GetAdvancesFunc):
  1.3466 +	Ditto.
  1.3467 +
  1.3468 +2009-01-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3469 +
  1.3470 +	* src/base/ftobjs.c (FT_Done_Library): Issue an error message when
  1.3471 +	FT_Done_Face() cannot free all faces. If the list of the opened
  1.3472 +	faces includes broken face which FT_Done_Face() cannot free,
  1.3473 +	FT_Done_Library() retries FT_Done_Face() and it can fall into
  1.3474 +	an endless loop. See the discussion:
  1.3475 +	http://lists.gnu.org/archive/html/freetype-devel/2008-09/msg00047.html
  1.3476 +	http://lists.gnu.org/archive/html/freetype-devel/2008-10/msg00000.html
  1.3477 +
  1.3478 +2009-01-07  Werner Lemberg  <wl@gnu.org>
  1.3479 +
  1.3480 +	* docs/CHANGES: Document new key `a' in ftdiff.
  1.3481 +
  1.3482 +2009-01-06  Werner Lemberg  <wl@gnu.org>
  1.3483 +
  1.3484 +	* autogen.sh: Don't use GNUisms while calling sed.  Problem reported
  1.3485 +	by Sean McBride.
  1.3486 +
  1.3487 +2009-01-06  Werner Lemberg  <wl@gnu.org>
  1.3488 +
  1.3489 +	* src/base/ftbitmap.c (FT_Bitmap_Convert): Handle FT_PIXEL_MODE_LCD
  1.3490 +	and FT_PIXEL_MODE_LCD_V.  Problem reported by Chi Nguyen
  1.3491 +	<chint@necsv.com>.
  1.3492 +
  1.3493 +2009-01-06  Diego Pettenò  <flameeyes@gmail.com>
  1.3494 +
  1.3495 +	* builds/unix/configure.raw: Don't call AC_CANONICAL_BUILD and
  1.3496 +	AC_CANONICAL_TARGET and use $host_os only.  A nice explanation for
  1.3497 +	this change can be found at
  1.3498 +	http://blog.flameeyes.eu/s/canonical-target.
  1.3499 +
  1.3500 +	From Savannah patch #6712.
  1.3501 +
  1.3502 +2009-01-06  Sean McBride  <sean@rogue-research.com>
  1.3503 +
  1.3504 +	* src/base/ftdbgmem.c (_debug_mem_dummy): Make it static.
  1.3505 +
  1.3506 +	* src/base/ftmac.c: Remove some #undefs.
  1.3507 +
  1.3508 +2008-12-26  Werner Lemberg  <wl@gnu.org>
  1.3509 +
  1.3510 +	Set `face_index' field in FT_Face for all font formats.
  1.3511 +
  1.3512 +	* cff/cffobjs.c (cff_face_init), winfonts/winfnt.c (FNT_Face_Init),
  1.3513 +	sfnt/sfobjs.c (sfnt_init_face): Do it.
  1.3514 +
  1.3515 +	* docs/CHANGES: Document it.
  1.3516 +
  1.3517 +2008-12-22  Steve Grubb
  1.3518 +
  1.3519 +	* builds/unix/ftsystem.c (FT_Stream_Open): Reject zero-length files.
  1.3520 +	Patch from Savannah bug #25151.
  1.3521 +
  1.3522 +2008-12-21  Werner Lemberg  <wl@gnu.org>
  1.3523 +
  1.3524 +	* src/pfr/pfrdrivr.c, src/winfonts/winfnt.c, src/cache/ftcmanag.c,
  1.3525 +	src/smooth/ftgrays.c, src/base/ftobjc.s, src/sfobjs.c:
  1.3526 +	s/_Err_Bad_Argument/_Err_Invalid_Argument/.  The former is for
  1.3527 +	errors in the bytecode interpreter only.
  1.3528 +
  1.3529 +2008-12-21  Werner Lemberg  <wl@gnu.org>
  1.3530 +
  1.3531 +	* src/base/ftpfr.c (FT_Get_PFR_Metrics): Protect against NULL
  1.3532 +	arguments.
  1.3533 +	Fix return value for non-PFR fonts.  Both problems reported by Chi
  1.3534 +	Nguyen <chint@necsv.com>.
  1.3535 +
  1.3536 +2008-12-21  anonymous
  1.3537 +
  1.3538 +	FT_USE_MODULE declares things as:
  1.3539 +
  1.3540 +	  extern const FT_Module_Class
  1.3541 +
  1.3542 +	(or similar for C++).  However, the actual types of the variables
  1.3543 +	being declared are often different, e.g., FT_Driver_ClassRec or
  1.3544 +	FT_Renderer_Class.  (Some are, indeed, FT_Module_Class.)
  1.3545 +
  1.3546 +	This works with most C compilers (since those structs begin with an
  1.3547 +	FT_Module_Class struct), but technically it's undefined behavior.
  1.3548 +
  1.3549 +	To quote the ISO/IEC 9899:TC2 final committee draft, section 6.2.7
  1.3550 +	paragraph 2:
  1.3551 +
  1.3552 +	  All declarations that refer to the same object or function shall
  1.3553 +	  have compatible type; otherwise, the behavior is undefined.
  1.3554 +
  1.3555 +	(And they are not compatible types.)
  1.3556 +
  1.3557 +	Most C compilers don't reject (or even detect!) code which has this
  1.3558 +	issue, but the GCC LTO development branch compiler does.  (It
  1.3559 +	outputs the types of the objects while generating .o files, along
  1.3560 +	with a bunch of other information, then compares them when doing the
  1.3561 +	final link-time code generation pass.)
  1.3562 +
  1.3563 +	Patch from Savannah bug #25133.
  1.3564 +
  1.3565 +	* src/base/ftinit.c (FT_USE_MODULE): Include variable type.
  1.3566 +
  1.3567 +	* builds/amiga/include/freetype/config/ftmodule.h,
  1.3568 +	include/freetype/config/ftmodule.h, */module.mk: Updated to declare
  1.3569 +	pass correct types to FT_USE_MODULE.
  1.3570 +
  1.3571 +2008-12-21  Hongbo Ni  <hongbo@njstar.com>
  1.3572 +
  1.3573 +	* src/autofit/aflatin.c (af_latin_hint_edges),
  1.3574 +	src/autofit/aflatin2.c (af_latin2_hint_edges), src/autofit/afcjk.c
  1.3575 +	(af_cjk_hint_edges): Protect against division by zero.  This fixes
  1.3576 +	Savannah bug #25124.
  1.3577 +
  1.3578 +2008-12-18  Werner Lemberg  <wl@gnu.org>
  1.3579 +
  1.3580 +	* docs/CHANGES: Updated.
  1.3581 +
  1.3582 +2008-12-18  Bevan, David  <dbevan@emtex.com>
  1.3583 +
  1.3584 +	Provide API for accessing embedding and subsetting restriction
  1.3585 +	information.
  1.3586 +
  1.3587 +	* include/freetype.h (FT_FSTYPE_INSTALLABLE_EMBEDDING,
  1.3588 +	FT_FSTYPE_RESTRICTED_LICENSE_EMBEDDING,
  1.3589 +	FT_FSTYPE_PREVIEW_AND_PRINT_EMBEDDING, FT_FSTYPE_EDITABLE_EMBEDDING,
  1.3590 +	FT_FSTYPE_NO_SUBSETTING, FT_FSTYPE_BITMAP_EMBEDDING_ONLY): New
  1.3591 +	macros.
  1.3592 +	(FT_Get_FSType_Flags): New function declaration.
  1.3593 +
  1.3594 +	* src/base/ftobjs.c (FT_Get_FSType_Flags): New function.
  1.3595 +
  1.3596 +	* src/cid/cidtoken.h, src/type1/t1tokens.h, src/type42/t42parse.c
  1.3597 +	(t42_keywords): Handle `FSType'.
  1.3598 +
  1.3599 +	* include/freetype/t1tables.h (PS_FontInfoRec): Add `fs_type' field.
  1.3600 +
  1.3601 +2008-12-17  Werner Lemberg  <wl@gnu.org>
  1.3602 +
  1.3603 +	* src/base/ftsynth.c (FT_GlyphSlot_Embolden): Don't use internal
  1.3604 +	macros so that copying the source code into an application works
  1.3605 +	out of the box.
  1.3606 +
  1.3607 +2008-12-17  Werner Lemberg  <wl@gnu.org>
  1.3608 +
  1.3609 +	* include/freetype/ftsynth.h, src/base/ftsynth.c: Move
  1.3610 +	FT_GlyphSlot_Own_Bitmap to...
  1.3611 +	* include/freetype/ftbitmap.h, src/base/ftbitmap.c: These files.
  1.3612 +
  1.3613 +	* docs/CHANGES: Document it.
  1.3614 +
  1.3615 +2008-12-10  Werner Lemberg  <wl@gnu.org>
  1.3616 +
  1.3617 +	Generalize the concept of `tricky' fonts by introducing
  1.3618 +	FT_FACE_FLAG_TRICKY to indicate that the font format's hinting
  1.3619 +	engine is necessary for correct rendering.
  1.3620 +
  1.3621 +	At the same time, slightly modify the behaviour of tricky fonts:
  1.3622 +	FT_LOAD_NO_HINTING is now ignored.  To really force raw loading
  1.3623 +	of tricky fonts (without hinting), both FT_LOAD_NO_HINTING and
  1.3624 +	FT_LOAD_NO_AUTOHINT must be used.
  1.3625 +
  1.3626 +	Finally, tricky TrueType fonts always use the bytecode interpreter
  1.3627 +	even if the patented code is used.
  1.3628 +
  1.3629 +	* include/freetype/freetype.h (FT_FACE_FLAG_TRICKY, FT_IS_TRICKY):
  1.3630 +	New macros.
  1.3631 +
  1.3632 +	* src/truetype/ttdriver.c (Load_Glyph): Handle new load flags
  1.3633 +	semantics as described above.
  1.3634 +
  1.3635 +	* src/truetype/ttobjs.c (tt_check_trickyness): New function, using
  1.3636 +	code of ...
  1.3637 +	(tt_face_init): This function, now simplified and updated to new
  1.3638 +	semantics.
  1.3639 +
  1.3640 +	* src/base/ftobjs.c (FT_Load_Glyph): Don't use autohinter for tricky
  1.3641 +	fonts.
  1.3642 +
  1.3643 +	* docs/CHANGES: Document it.
  1.3644 +
  1.3645 +2008-12-09  Werner Lemberg  <wl@gnu.org>
  1.3646 +
  1.3647 +	Really fix Savannah bug #25010: An SFNT font with neither outlines
  1.3648 +	nor bitmaps can be considered as containing space `glyphs' only.
  1.3649 +
  1.3650 +	* src/truetype/ttpload.c (tt_face_load_loca): Handle the case where
  1.3651 +	a `glyf' table is missing.
  1.3652 +
  1.3653 +	* src/truetype/ttgload.c (load_truetype_glyph): Abort if we have no
  1.3654 +	`glyf' table but a non-zero `loca' entry.
  1.3655 +	(tt_loader_init): Handle missing `glyf' table.
  1.3656 +
  1.3657 +	* src/base/ftobjs.c (FT_Load_Glyph): Undo change 2008-12-05.
  1.3658 +
  1.3659 +	* src/sfnt/sfobjs.c (sfnt_load_face): A font with neither outlines
  1.3660 +	nor bitmaps is scalable.
  1.3661 +
  1.3662 +2008-12-05  Werner Lemberg  <wl@nu.org>
  1.3663 +
  1.3664 +	* src/autofit/aflatin.c (af_latin_uniranges): Add more ranges.  This
  1.3665 +	fixes Savannah bug #21190 which also provides a basic patch.
  1.3666 +
  1.3667 +2008-12-05  Werner Lemberg  <wl@nu.org>
  1.3668 +
  1.3669 +	* include/freetype/freetype.h (FT_LOAD_ADVANCE_ONLY): Use value
  1.3670 +	0x100 instead of 0x10000; the latter value is already occupied by
  1.3671 +	FT_LOAD_TARGET_LIGHT.  Bug reported by James Cloos.
  1.3672 +
  1.3673 +
  1.3674 +	Handle SFNT with neither outlines nor bitmaps.  This fixes Savannah
  1.3675 +	bug #25010.
  1.3676 +
  1.3677 +	* src/base/ftobjs.c (FT_Load_Glyph): Reject fonts with neither
  1.3678 +	outlines nor bitmaps.
  1.3679 +
  1.3680 +	* src/sfnt/sfobjs.c (sfnt_load_face): Don't return an error if there
  1.3681 +	is no table with glyphs.
  1.3682 +
  1.3683 +
  1.3684 +	* src/sfnt/ttload.c (tt_face_lookup_table): Improve debugging
  1.3685 +	message.
  1.3686 +
  1.3687 +2008-12-01  Werner Lemberg  <wl@gnu.org>
  1.3688 +
  1.3689 +	GDEF tables need `glyph_count' too for validation.  Problem reported
  1.3690 +	by Chi Nguyen <chint@necsv.com>.
  1.3691 +
  1.3692 +	* src/otvalid/otvgdef.c (otv_GDEF_validate), src/otvalid/otvalid.h
  1.3693 +	(otv_GDEF_validate), src/otvalid/otvmod.c (otv_validate): Pass
  1.3694 +	`glyph_count'.
  1.3695 +
  1.3696 +2008-11-29  Werner Lemberg  <wl@gnu.org>
  1.3697 +
  1.3698 +	* src/autofit/afcjk.c, src/base/ftoutln.c, src/base/ftrfork.c,
  1.3699 +	src/bdf/bdfdrivr.c, src/gxvalid/gxvmorx.c, src/otvalid/otvmath.c,
  1.3700 +	src/pcf/pcfdrivr.c, src/psnames/pstables.h, src/smooth/ftgrays.c,
  1.3701 +	src/tools/glnames.py, src/truetype/ttinterp.c, src/type1/t1load.c,
  1.3702 +	src/type42/t42objs.c, src/winfonts/winfnt.c: Fix compiler warnings
  1.3703 +	(Atari PureC).
  1.3704 +
  1.3705 +2008-11-29  James Cloos  <cloos@jhcloos.com>
  1.3706 +
  1.3707 +	* src/type/t1load.c (mm_axis_unmap): Revert previous patch and fix
  1.3708 +	it correctly by using FT_INT_TO_FIXED (FreeType expects 16.16 values
  1.3709 +	in the /BlendDesignMap space).
  1.3710 +
  1.3711 +2008-11-29  James Cloos  <cloos@jhcloos.com>
  1.3712 +
  1.3713 +	* src/type1/t1load.c (mm_axis_unmap): `blend_points' is FT_Fixed*,
  1.3714 +	whereas `design_points' is FT_Long*.  Therefore, return blend rather
  1.3715 +	than design points.
  1.3716 +
  1.3717 +2008-11-27  Werner Lemberg  <wl@gnu.org>
  1.3718 +
  1.3719 +	* src/cff/cffparse.c (cff_parse_real): Handle more than nine
  1.3720 +	significant digits correctly.  This fixes Savannah bug #24953.
  1.3721 +
  1.3722 +2008-11-25  Daniel Zimmermann  <netzimme@aol.com>
  1.3723 +
  1.3724 +	* src/base/ftstream.c (FT_Stream_ReadFields): Don't access stream
  1.3725 +	before the NULL check.  From Savannah patch #6681.
  1.3726 +
  1.3727 +2008-11-24  Werner Lemberg  <wl@gnu.org>
  1.3728 +
  1.3729 +	Fixes from the gnuwin32 port.
  1.3730 +
  1.3731 +	* src/base/ftlcdfil.c: s/EXPORT/EXPORT_DEF/.
  1.3732 +
  1.3733 +	* src/base/ftotval.c: Include FT_OPENTYPE_VALIDATE_H.
  1.3734 +
  1.3735 +	* src/psaux/psobjs.c (ps_table_add): Check `length'.
  1.3736 +
  1.3737 +2008-11-15  Werner Lemberg  <wl@gnu.org>
  1.3738 +
  1.3739 +	* src/truetype/ttinterp.c (tt_default_graphics_state): The default
  1.3740 +	value for `scan_type' is zero, as confirmed by Greg Hitchcock from
  1.3741 +	Microsoft.  Problem reported by Michal Nowakowski
  1.3742 +	<miszka@limes.com.pl>.
  1.3743 +
  1.3744 +2008-11-12  Tor Andersson  <tor.andersson@gmail.com>
  1.3745 +
  1.3746 +	* src/cff/cffdrivr.c (cff_get_cmap_info): Initialize `format' field.
  1.3747 +	This fixes Savannah bug #24819.
  1.3748 +
  1.3749 +2008-11-08  Werner Lemberg  <wl@gnu.org>
  1.3750 +
  1.3751 +	* src/sfnt/sfobjs.c (sfnt_load_face): Remove #if 0/#endif guards
  1.3752 +	since OpenType version 1.5 has been released.
  1.3753 +
  1.3754 +	* include/ttnameid.h (TT_NAME_ID_WWS_FAMILY,
  1.3755 +	TT_NAME_ID_WWS_SUBFAMILY): New macros for OpenType 1.5.
  1.3756 +	(TT_URC_COPTIC, TT_URC_VAI, TT_URC_NKO, TT_URC_BALINESE,
  1.3757 +	TT_URC_PHAGSPA, TT_URC_NON_PLANE_0, TT_URC_PHOENICIAN,
  1.3758 +	TT_URC_TAI_LE, TT_URC_NEW_TAI_LUE, TT_URC_BUGINESE,
  1.3759 +	TT_URC_GLAGOLITIC, TT_URC_YIJING, TT_URC_SYLOTI_NAGRI,
  1.3760 +	TT_URC_LINEAR_B, TT_URC_ANCIENT_GREEK_NUMBERS, TT_URC_UGARITIC,
  1.3761 +	TT_URC_OLD_PERSIAN, TT_URC_SHAVIAN, TT_URC_OSMANYA,
  1.3762 +	TT_URC_CYPRIOT_SYLLABARY, TT_URC_KHAROSHTHI, TT_URC_TAI_XUAN_JING,
  1.3763 +	TT_URC_CUNEIFORM, TT_URC_COUNTING_ROD_NUMERALS, TT_URC_SUNDANESE,
  1.3764 +	TT_URC_LEPCHA, TT_URC_OL_CHIKI, TT_URC_SAURASHTRA, TT_URC_KAYAH_LI,
  1.3765 +	TT_URC_REJANG, TT_URC_CHAM, TT_URC_ANCIENT_SYMBOLS,
  1.3766 +	TT_URC_PHAISTOS_DISC, TT_URC_OLD_ANATOLIAN, TT_URC_GAME_TILES): New
  1.3767 +	macros for OpenType 1.5.
  1.3768 +
  1.3769 +2008-11-08  Wenlin Institute  <wenlin@wenlin.com>
  1.3770 +
  1.3771 +	* src/base/ftobjs.c (ft_glyphslot_free_bitmap): Protect against
  1.3772 +	slot->internal == NULL.  Reported by Graham Asher.
  1.3773 +
  1.3774 +2008-11-08  Werner Lemberg  <wl@gnu.org>
  1.3775 +
  1.3776 +	* src/sfnt/sfobjs.c (tt_face_get_name): Modified to return an error
  1.3777 +	code so that memory allocation problems can be distinguished from
  1.3778 +	missing table entries.  Reported by Graham Asher.
  1.3779 +	(GET_NAME): New macro.
  1.3780 +	(sfnt_load_face): Use it.
  1.3781 +
  1.3782 +2008-11-05  Werner Lemberg  <wl@gnu.org>
  1.3783 +
  1.3784 +	* devel/ftoption.h, include/freetype/config/ftoption.h
  1.3785 +	[TT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Undefine
  1.3786 +	TT_CONFIG_OPTION_UNPATENTED_HINTING.  This fixes the return value of
  1.3787 +	`FT_Get_TrueType_Engine_Type' (and makes it work as documented).
  1.3788 +	Reported in bug #441638 of bugzilla.novell.com.
  1.3789 +
  1.3790 +	* docs/CHANGES: Document it.
  1.3791 +
  1.3792 +2008-11-03  Werner Lemberg  <wl@gnu.org>
  1.3793 +
  1.3794 +	* src/type1/t1load.c (parse_subrs): Use an endless loop.  There are
  1.3795 +	fonts (like HELVI.PFB version 003.001, used on OS/2) which define
  1.3796 +	some `subrs' elements more than once.  Problem reported by Peter
  1.3797 +	Weilbacher <mozilla@weilbacher.org>.
  1.3798 +
  1.3799 +2008-10-15  Graham Asher  <graham.asher@btinternet.com>
  1.3800 +
  1.3801 +	* src/sfnt/ttpost.c (tt_post_default_names): Add `const'.
  1.3802 +
  1.3803 +2008-10-15  David Turner  <david@freetype.org>
  1.3804 +
  1.3805 +	* src/truetype/ttgxvar.c (TT_Set_MM_Blend): Disambiguate for
  1.3806 +	meddlesome compilers' warning against `for ( ...; ...; ...) ;'.
  1.3807 +
  1.3808 +2008-10-14  Werner Lemberg  <wl@gnu.org>
  1.3809 +
  1.3810 +	* src/cff/cffobjs.c (cff_face_init): Remove compiler warning.
  1.3811 +	Suggested by Bram Tassyns in Savannah patch #6651.
  1.3812 +
  1.3813 +2008-10-12  Graham Asher  <graham.asher@btinternet.com>
  1.3814 +
  1.3815 +	* src/sfnt/sfobjs.c (sfnt_load_face): Fix computation of
  1.3816 +	`underline_position'.
  1.3817 +
  1.3818 +2008-10-12  Werner Lemberg  <wl@gnu.org>
  1.3819 +
  1.3820 +	* docs/CHANGES: Updated.
  1.3821 +
  1.3822 +2008-10-09  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3823 +
  1.3824 +	Fix Savannah bug #24468.
  1.3825 +
  1.3826 +	According to include/freetype/internal/ftobjs.h, the appropriate
  1.3827 +	type to interchange single character codepoint is FT_UInt32. It
  1.3828 +	should be distinguished from FT_UInt which can be 16bit integer.
  1.3829 +
  1.3830 +	* src/sfnt/ttcmap.c (tt_cmap4_char_map_linear): Change the type
  1.3831 +	of the second argument `pcharcode' from FT_UInt* to FT_UInt32*.
  1.3832 +	(tt_cmap4_char_map_binary): Ditto.
  1.3833 +	(tt_cmap14_get_nondef_chars): Change the type of return value
  1.3834 +	from FT_UInt* to FT_UInt32*.
  1.3835 +
  1.3836 +2008-10-08  John Tytgat  <John.Tytgat@esko.com>
  1.3837 +
  1.3838 +	Fix Savannah bug #24485.
  1.3839 +
  1.3840 +	* src/type1/t1load.c (parse_charstrings): Assure that we always have
  1.3841 +	a .notdef glyph.
  1.3842 +
  1.3843 +2008-10-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3844 +
  1.3845 +	* src/base/ftmac.c: Include FT_TRUETYPE_TAGS_H for multi build.
  1.3846 +	* builds/mac/ftmac.c: Ditto.
  1.3847 +
  1.3848 +2008-10-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3849 +
  1.3850 +	* include/freetype/tttags.h (TTAG_TYP1, TTAG_typ1): Fix definitions.
  1.3851 +	* src/base/ftobjs.c: Include FT_TRUETYPE_TAGS_H.
  1.3852 +
  1.3853 +2008-10-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3854 +
  1.3855 +	* src/sfnt/sfobjs.c (sfnt_open_font): Allow `typ1' version tag in
  1.3856 +	the beginning of sfnt container.
  1.3857 +	* src/sfnt/ttload.c (check_table_dir): Return
  1.3858 +	`SFNT_Err_Table_Missing' when sfnt table directory structure is
  1.3859 +	correct but essential tables for TrueType fonts (`head', `bhed' or
  1.3860 +	`SING') are missing.  Other errors are returned by
  1.3861 +	SFNT_Err_Unknown_File_Format.
  1.3862 +
  1.3863 +	* src/base/ftobjs.c (FT_Open_Face): When TrueType driver returns
  1.3864 +	`FT_Err_Table_Missing', try `open_face_PS_from_sfnt_stream'.  It is
  1.3865 +	enabled only when old mac font support is configured.
  1.3866 +
  1.3867 +2008-10-04  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3868 +
  1.3869 +	* include/freetype/tttags.h (TTAG_CID, TTAG_FOND, TTAG_LWFN,
  1.3870 +	TTAG_POST, TTAG_sfnt, TTAG_TYP1, TTAG_typ1): New tags to simplify
  1.3871 +	the repeated calculations of these values in ftobjs.c and ftmac.c.
  1.3872 +	* src/base/ftobjs.c: Replace all FT_MAKE_TAG by new tags.
  1.3873 +	* src/base/ftmac.c: Ditto.
  1.3874 +	* builds/mac/ftmac.c: Ditto.
  1.3875 +
  1.3876 +2008-10-04  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3877 +
  1.3878 +	* src/base/ftobjs.c (ft_lookup_PS_in_sfnt_stream): Remove wrong
  1.3879 +	initialization of *is_sfnt_cid.
  1.3880 +
  1.3881 +2008-10-04  Werner Lemberg  <wl@gnu.org>
  1.3882 +
  1.3883 +	* src/base/ftobjs.c (open_face_PS_from_sfnt_stream): Remove compiler
  1.3884 +	warnings.
  1.3885 +
  1.3886 +2008-10-04  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3887 +
  1.3888 +	* src/base/ftobjs.c (ft_lookup_PS_in_sfnt): Replaced by...
  1.3889 +	(ft_lookup_PS_in_sfnt_stream): This.
  1.3890 +	(open_face_PS_from_sfnt_stream): New function.  It checks whether
  1.3891 +	the stream is sfnt-wrapped Type1 PS font or sfnt-wrapped CID-keyed
  1.3892 +	font, then try to open a face for given face_index.
  1.3893 +	(Mac_Read_sfnt_Resource): Replace the combination of
  1.3894 +	`ft_lookup_PS_in_sfnt' and `open_face_from_buffer' by
  1.3895 +	`open_face_PS_from_sfnt_stream'.
  1.3896 +	* src/base/ftmac.c (FT_New_Face_From_SFNT): Ditto.
  1.3897 +	* builds/mac/ftmac.c (FT_New_Face_From_SFNT): Ditto.
  1.3898 +	* src/base/ftbase.h: Remove `ft_lookup_PS_in_sfnt' and add
  1.3899 +	`open_face_PS_from_sfnt_stream'.
  1.3900 +
  1.3901 +2008-10-03  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3902 +
  1.3903 +	* src/base/ftobjs.c (ft_lookup_PS_in_sfnt): Set *is_sfnt_cid to
  1.3904 +	FALSE if neither `CID ' nor `TYP1' is found in the sfnt container.
  1.3905 +
  1.3906 +2008-10-03  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3907 +
  1.3908 +	* include/freetype/config/ftconfig.h: Define FT_MACINTOSH when SC or
  1.3909 +	MrC compiler of MPW is used.  These compilers do not define the
  1.3910 +	macro __APPLE__ by themselves.
  1.3911 +	* builds/unix/ftconfig.in: Ditto.
  1.3912 +	* builds/vms/ftconfig.h: Ditto.
  1.3913 +	* src/base/ftbase.c: Use FT_MACINTOSH instead of __APPLE__, to
  1.3914 +	include ftmac.c if FreeType 2 is built by MPW.
  1.3915 +	* src/base/ftobjs.c: Use FT_MACINTOSH instead of __APPLE__, to
  1.3916 +	enable shared functions for ftmac.c if FreeType 2 is built by MPW.
  1.3917 +
  1.3918 +	* builds/mac/ftmac.c: Include ftbase.h.
  1.3919 +	(memory_stream_close): Removed.
  1.3920 +	(new_memory_stream): Ditto.
  1.3921 +	(open_face_from_buffer): Removed.  Use the implementation in
  1.3922 +	ftobjs.c.
  1.3923 +	(ft_lookup_PS_in_sfnt): Ditto.
  1.3924 +
  1.3925 +	* builds/mac/FreeType.m68k_far.make.txt: Build ftmac.c as an
  1.3926 +	included part of ftbase.c, to share the functions in ftobjs.c.  The
  1.3927 +	rule compiling ftmac.c separately is removed and the rule copying
  1.3928 +	ftbase.c from src/base/ftbase.c to builds/mac/ftbase.c is added.
  1.3929 +	* builds/mac/FreeType.m68k_cfm.make.txt: Ditto.
  1.3930 +	* builds/mac/FreeType.ppc_classic.make.txt: Ditto.
  1.3931 +	* builds/mac/FreeType.ppc_carbon.make.txt: Ditto.
  1.3932 +
  1.3933 +2008-10-02  Bram Tassyns  <bramt@enfocus.be>
  1.3934 +
  1.3935 +	* src/cff/cffgload.c (cff_slot_load): Map CID 0 to GID 0.  This
  1.3936 +	fixes Savannah bug #24430.
  1.3937 +
  1.3938 +2008-10-02  Werner Lemberg  <wl@gnu.org>
  1.3939 +
  1.3940 +	* builds/freetype.mk (BASE_H): Rename to...
  1.3941 +	(INTERNAL_H): This.
  1.3942 +	(FREETYPE_H): Updated.
  1.3943 +	* src/base/rules.mk: (BASE_OBJ_S, OBJ_DIR/%.$O): Add BASE_H.
  1.3944 +	* src/bdf/rules.mk (BDF_DRV_H): Add bdferror.h.
  1.3945 +	* src/cache/rules.mk (CACHE_DRV_H): Add ftccache.h and ftcsbits.h.
  1.3946 +	* src/pcf/rules.mk (PCF_DRV_H): Add pcfread.h.
  1.3947 +	* src/raster/rules.mk (RASTER_DRV_H): Add ftmisc.h.
  1.3948 +	* src/type42/rules.mk (T42_DRV_H): Add t42types.h.
  1.3949 +
  1.3950 +2008-10-02  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3951 +
  1.3952 +	* src/base/ftbase.h: New file to declare the private utility
  1.3953 +	functions shared by the sources of base modules.  Currently,
  1.3954 +	`ft_lookup_PS_in_sfnt' and `open_face_from_buffer' are declared to
  1.3955 +	share between ftobjs.c and ftmac.c.
  1.3956 +
  1.3957 +	* src/base/rule.mk: Add ftbase.h.
  1.3958 +
  1.3959 +	* src/base/ftobjs.c: Include ftbase.h.
  1.3960 +	(memory_stream_close): Build on any platform when old MacOS font
  1.3961 +	support is enabled.
  1.3962 +	(new_memory_stream): Ditto.
  1.3963 +	(open_face_from_buffer): Build on any platform when old MacOS font
  1.3964 +	support is enabled.  The counting of the face in a font file is
  1.3965 +	slightly different between Carbon-dependent parser and Carbon-free
  1.3966 +	parser.  They are merged with the platform-specific conditional.
  1.3967 +	(ft_lookup_PS_in_sfnt): Ditto.
  1.3968 +
  1.3969 +	* src/base/ftmac.c: Include ftbase.h.
  1.3970 +	(memory_stream_close): Removed.
  1.3971 +	(new_memory_stream): Ditto.
  1.3972 +	(open_face_from_buffer): Removed.  Use the implementation in
  1.3973 +	ftobjs.c.
  1.3974 +	(ft_lookup_PS_in_sfnt): Ditto.
  1.3975 +
  1.3976 +2008-10-02  Werner Lemberg  <wl@gnu.org>
  1.3977 +
  1.3978 +	* src/sfnt/sfobjs.c (sfnt_load_face): `psnames_error' is only needed
  1.3979 +	if TT_CONFIG_OPTION_POSTSCRIPT_NAMES is defined.
  1.3980 +
  1.3981 +2008-10-01  Werner Lemberg  <wl@gnu.org>
  1.3982 +
  1.3983 +	* src/truetype/ttobjs.c (tt_face_done), src/cff/cffobjs.c
  1.3984 +	(cff_face_done), src/pfr/pfrobjs.c (pfr_face_done),
  1.3985 +	src/pcf/pcfdrivr.c (PCF_Face_Done), src/cid/cidobjs.c
  1.3986 +	(cid_face_done), src/bdf/bdfdrivr. (BDF_Face_Done),
  1.3987 +	src/sfnt/sfobjs.c (sfnt_face_done): Protect against face == 0.
  1.3988 +	Reported by Graham Asher.
  1.3989 +
  1.3990 +2008-09-30  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.3991 +
  1.3992 +	* src/base/rules.mk: Add conditional source to BASE_SRC, for `make
  1.3993 +	multi' on Mac OS X.  If the macro $(ftmac_c) is defined,
  1.3994 +	$(BASE_DIR)/$(ftmac_c) is added to BASE_SRC.  In a normal build, the
  1.3995 +	lack of ftmac.c in BASE_SRC is not serious because ftbase.c includes
  1.3996 +	ftmac.c.
  1.3997 +	* builds/unix/unix-def.in: Add a macro definition of $(ftmac_c).
  1.3998 +	* builds/unix/configure.raw: Add procedure to set up appropriate
  1.3999 +	value of $(ftmac_c) with the consideration of the availability of
  1.4000 +	Carbon framework.
  1.4001 +
  1.4002 +2008-09-30  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4003 +
  1.4004 +	* src/base/Jamfile: Add target for multi build by jam on Mac OS X.
  1.4005 +	* src/base/ftobjs.c (FT_New_Face): Fix the condition to include this
  1.4006 +	function for MPW building.  It is synchronized the condition to
  1.4007 +	include ftmac.c source into ftbase.c.
  1.4008 +
  1.4009 +2008-09-22  Werner Lemberg  <wl@gnu.org>
  1.4010 +
  1.4011 +	* src/cff/cffgload.c (CFF_Operator, cff_argument_counts,
  1.4012 +	cff_decoder_parse_charstrings): Handle (invalid)
  1.4013 +	`callothersubr' and `pop' instructions.
  1.4014 +
  1.4015 +2008-09-22  John Tytgat  <John.Tytgat@esko.com>
  1.4016 +
  1.4017 +	Fix Savannah bug #24307.
  1.4018 +
  1.4019 +	* include/freetype/internal/t1types.h (CID_FaceRec),
  1.4020 +	src/type42/t42types.h (T42_FaceRec): Comment out `afm_data'.
  1.4021 +
  1.4022 +2008-09-21  Werner Lemberg  <wl@gnu.org>
  1.4023 +
  1.4024 +	* src/smooth/ftgrays.c (gray_raster_render): Don't dereference
  1.4025 +	`target_map' if FT_RASTER_FLAG_DIRECT is set.  Problem reported by
  1.4026 +	Stephan T. Lavavej <stl@nuwen.net>.
  1.4027 +
  1.4028 +2008-09-21  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4029 +
  1.4030 +	* src/otvalid/Jamfile: Add missing target `otvmath' for multi build
  1.4031 +	by jam.
  1.4032 +	* src/sfnt/Jamfile: Add missing target `ttmtx' for multi build by
  1.4033 +	jam.
  1.4034 +
  1.4035 +2008-09-20  Werner Lemberg  <wl@gnu.org>
  1.4036 +
  1.4037 +	* src/smooth/ftgrays.c (gray_find_cell): Fix threshold.  The values
  1.4038 +	passed to this function are already `normalized'.  Problem reported
  1.4039 +	by Stephan T. Lavavej <stl@nuwen.net>.
  1.4040 +
  1.4041 +	* docs/CHANGES: Document it.
  1.4042 +
  1.4043 +2008-09-20  Werner Lemberg  <wl@gnu.org>
  1.4044 +
  1.4045 +	* src/base/ftoutln.c: Include FT_INTERNAL_DEBUG_H.
  1.4046 +	(FT_Outline_Decompose): Decorate with tracing messages.
  1.4047 +
  1.4048 +	* src/smooth/ftgrays.c [DEBUG_GRAYS]: Replace with
  1.4049 +	FT_DEBUG_LEVEL_TRACE.
  1.4050 +	[_STANDALONE_ && FT_DEBUG_LEVEL_TRACE]: Include stdio.h and
  1.4051 +	stdarg.h.
  1.4052 +
  1.4053 +	(FT_TRACE) [_STANDALONE_]: Remove.
  1.4054 +	(FT_Message) [_STANDALONE_ && FT_DEBUG_LEVEL_TRACE]: New function.
  1.4055 +	(FT_TRACE5, FT_TRACE7) [_STANDALONE_]: New macros.
  1.4056 +	(FT_ERROR) [_STANDALONE_]: Updated.
  1.4057 +
  1.4058 +	(gray_hline) [FT_DEBUG_LEVEL_TRACE]: Fix condition.
  1.4059 +	Use FT_TRACE7.
  1.4060 +	(gray_dump_cells): Make it `static void'.
  1.4061 +	(gray_convert_glyph): Use FT_TRACE7.
  1.4062 +
  1.4063 +	(FT_Outline_Decompose) [_STANDALONE_]: Synchronize with version in
  1.4064 +	ftoutln.c.
  1.4065 +
  1.4066 +	* src/base/ftadvanc.c (FT_Get_Advance, FT_Get_Advances): Use
  1.4067 +	FT_ERROR_BASE.
  1.4068 +
  1.4069 +	* docs/formats.txt: Updated.
  1.4070 +
  1.4071 +2008-09-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4072 +
  1.4073 +	* src/base/ftmac.c: Import sfnt-wrapped Type1 and sfnt-wrapped
  1.4074 +	CID-keyed font support.
  1.4075 +	* builds/mac/ftmac.c: Ditto.
  1.4076 +
  1.4077 +2008-09-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4078 +
  1.4079 +	* src/base/ftobjs.c (Mac_Read_sfnt_Resource): Fix double free bug in
  1.4080 +	sfnt-wrapped Type1 and sfnt-wrapped CID-keyed font support code.
  1.4081 +	`open_face_from_buffer' frees the passed buffer if it cannot open a
  1.4082 +	face from the buffer, so the caller must not free it.
  1.4083 +
  1.4084 +2008-09-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4085 +
  1.4086 +	* src/base/ftobjs.c (Mac_Read_sfnt_Resource): Add initial support
  1.4087 +	for sfnt-wrapped Type1 and sfnt-wrapped CID-keyed font.
  1.4088 +	(ft_lookup_PS_in_sfnt): New function to look up `TYP1' or `CID '
  1.4089 +	table in sfnt table directory.  It is used before loading TrueType
  1.4090 +	font driver.
  1.4091 +
  1.4092 +	* docs/CHANGES: Add note about the current status of sfnt-wrapped
  1.4093 +	Type1 and sfnt-wrapped CID-keyed font support.
  1.4094 +
  1.4095 +2008-09-18  Werner Lemberg  <wl@gnu.org>
  1.4096 +
  1.4097 +	* src/base/ftsystem.c (FT_Done_Memory): Use ft_sfree directly for
  1.4098 +	orthogonality (ft_free and ft_sfree could belong to different memory
  1.4099 +	pools).  This fixes Savannah bug #24297.
  1.4100 +
  1.4101 +2008-09-18  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4102 +
  1.4103 +	* src/cff/cffobjs.c (cff_face_init): Use TTAG_OTTO defined
  1.4104 +	in ttags.h instead of numerical value 0x4F54544FL.
  1.4105 +
  1.4106 +2008-09-16  Werner Lemberg  <wl@gnu.org>
  1.4107 +
  1.4108 +	* src/cff/cffgload.h, src/cff/cffgload.c
  1.4109 +	(cff_decoder_set_width_only): Eliminate function call.
  1.4110 +
  1.4111 +2008-09-15  George Williams  <gww@silcom.com>
  1.4112 +
  1.4113 +	Fix Savannah bug #24179, reported by Bram Tassyns.
  1.4114 +
  1.4115 +	* src/type1/t1load.c (mm_axis_unmap, T1_Get_MM_Var): Fix computation
  1.4116 +	of default values.
  1.4117 +
  1.4118 +2008-09-15  Werner Lemberg  <wl@gnu.org>
  1.4119 +
  1.4120 +	* src/tools/glnames.py (main): Surround `ft_get_adobe_glyph_index'
  1.4121 +	and `ft_adobe_glyph_list' with FT_CONFIG_OPTION_ADOBE_GLYPH_LIST to
  1.4122 +	prevent unconditional definition.  This fixes Savannah bug #24241.
  1.4123 +
  1.4124 +	* src/psnames/pstables.h: Regenerated.
  1.4125 +
  1.4126 +2008-09-13  Werner Lemberg  <wl@gnu.org>
  1.4127 +
  1.4128 +	* autogen.sh, builds/unix/configure.raw,
  1.4129 +	include/freetype/config/ftconfig.h, builds/unix/ftconfig.in: Minor
  1.4130 +	beautifying.
  1.4131 +
  1.4132 +	* include/freetype/ftadvanc.h, include/freetype/ftgasp.h,
  1.4133 +	include/freetype/ftlcdfil.h: Protect against FreeType 1.
  1.4134 +	Some other minor fixes.
  1.4135 +
  1.4136 +	* devel/ftoption.h: Synchronize with
  1.4137 +	include/freetype/config/ftoption.h.
  1.4138 +
  1.4139 +2008-09-11  Werner Lemberg  <wl@gnu.org>
  1.4140 +
  1.4141 +	* src/base/ftbase.c: Include ftadvanc.c.
  1.4142 +
  1.4143 +2008-09-11  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4144 +
  1.4145 +	* builds/unix/ftconfig.in: Duplicate the cpp computation of
  1.4146 +	FT_SIZEOF_{INT|LONG} from include/freetype/config/ftconfig.h.
  1.4147 +	(FT_USE_AUTOCONF_SIZEOF_TYPES): New macro.  If defined, the cpp
  1.4148 +	computation is disabled and the statically configured sizes are
  1.4149 +	used.  This fixes Savannah bug #21250.
  1.4150 +
  1.4151 +	* builds/unix/configure.raw: Add the checks to compare the cpp
  1.4152 +	computation results of the bit length of int and long versus the
  1.4153 +	sizes detected by running `configure'.  If the results are
  1.4154 +	different, FT_USE_AUTOCONF_SIZEOF_TYPES is defined to prioritize the
  1.4155 +	results.
  1.4156 +	New option --{enable|disable}-biarch-config is added to define or
  1.4157 +	undefine FT_USE_AUTOCONF_SIZEOF_TYPES manually.
  1.4158 +
  1.4159 +2008-09-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4160 +
  1.4161 +	* builds/unix/configure.raw: Clear FT2_EXTRA_LIBS when Carbon or
  1.4162 +	ApplicationService framework is missing.  Although this value is not
  1.4163 +	used in building of FreeType2, it is written in `freetype2.pc' and
  1.4164 +	`freetype-config'.
  1.4165 +
  1.4166 +2008-09-01  david turner  <david@freetype.org>
  1.4167 +
  1.4168 +	* src/cache/ftccmap.c (FTC_CMapCache_Lookup): Accept a negative cmap
  1.4169 +	index to mean `use default cached FT_Face's charmap'.  This fixes
  1.4170 +	Savannah bug #22625.
  1.4171 +	* include/freetype/ftcache.h: Document it.
  1.4172 +
  1.4173 +
  1.4174 +	Make FT_MulFix an inlined function.  This is done to speed up
  1.4175 +	FreeType a little (on x86 3% when loading+hinting, 10% when
  1.4176 +	rendering, ARM savings are more important though).  Disable this by
  1.4177 +	undefining FT_CONFIG_OPTION_INLINE_MULFIX.
  1.4178 +
  1.4179 +	Use of assembler code can now be controlled with
  1.4180 +	FT_CONFIG_OPTION_NO_ASSEMBLER.
  1.4181 +
  1.4182 +	* include/freetype/config/ftconfig.h, builds/unix/ftconfig.in
  1.4183 +	[!FT_CONFIG_OPTION_NO_ASSEMBLER] (FT_MulFix_arm): New assembler
  1.4184 +	implementation.
  1.4185 +	[!FT_CONFIG_OPTION_NO_ASSEMBLER] (FT_MulFix_i386): Assembler
  1.4186 +	implementation taken from `ftcalc.c'.
  1.4187 +	[!FT_CONFIG_OPTION_NO_ASSEMBLER] (FT_MULFIX_ASSEMBLER): New macro
  1.4188 +	which is defined to the platform-specific assembler implementation
  1.4189 +	of FT_MulFix.
  1.4190 +	[FT_CONFIG_OPTION_INLINE_MULFIX && FT_MULFIX_ASSEMBLER]
  1.4191 +	(FT_MULFIX_INLINED): New macro.
  1.4192 +
  1.4193 +	* include/freetype/config/ftoption.h (FT_CONFIG_OPTION_NO_ASSEMBLER,
  1.4194 +	FT_CONFIG_OPTION_INLINE_MULFIX): New macros.
  1.4195 +
  1.4196 +	* include/freetype/freetype.h: Updated to handle FT_MULFIX_INLINED.
  1.4197 +
  1.4198 +	* src/base/ftcalc.c: Updated to use FT_MULFIX_ASSEMBLER and
  1.4199 +	FT_MULFIX_INLINED.
  1.4200 +
  1.4201 +
  1.4202 +	Add a new header named FT_ADVANCES_H declaring some new APIs to
  1.4203 +	extract the advances of one or more glyphs without necessarily
  1.4204 +	loading their outlines.  Also provide `fast loaders' for the
  1.4205 +	TrueType, Type1, and CFF font drivers (more to come later).
  1.4206 +
  1.4207 +	* src/base/ftadvanc.c, include/freetype/ftadvanc.h: New files.
  1.4208 +
  1.4209 +	* include/freetype/config/ftheader.h (FT_ADVANCES_H): New macro.
  1.4210 +	* include/freetype/freetype.h (FT_LOAD_ADVANCE_ONLY): New macro.
  1.4211 +
  1.4212 +	* include/freetype/internal/ftdriver.h (FT_Face_GetAdvancesFunc):
  1.4213 +	`flags' and `advances' are now of type `FT_UInt' and `FT_Fixed',
  1.4214 +	respectively.
  1.4215 +
  1.4216 +	* src/base/Jamfile (_sources), src/base/rules.mk (BASE_SRC): Add
  1.4217 +	ftadvanc.c.
  1.4218 +
  1.4219 +	* src/cff/cffdrivr.c (cff_get_advances): New function.
  1.4220 +	(cff_driver_class): Register it.
  1.4221 +
  1.4222 +	* src/cff/cffgload.c (cff_decoder_set_width_only): New function.
  1.4223 +	(cff_decoder_parse_charstrings): Handle `width_only'.
  1.4224 +	(cff_slot_load): Handle FT_LOAD_ADVANCE_ONLY.
  1.4225 +
  1.4226 +	* src/cff/cffgload.h (cff_decoder): New element `width_only'.
  1.4227 +	(cff_decoder_set_width_only): New declaration.
  1.4228 +
  1.4229 +	* src/truetype/ttdriver.c (tt_get_advances): New function.
  1.4230 +	(tt_driver_class): Register it.
  1.4231 +
  1.4232 +	* src/truetype/ttgload.c (Get_HMetrics, Get_VMetrics): Renamed to...
  1.4233 +	(TT_Get_HMetrics, TT_Get_VMetrics): This.
  1.4234 +	Update callers.
  1.4235 +	* src/truetype/ttgload.h: Declare them.
  1.4236 +
  1.4237 +	* src/type1/t1gload.h, src/type1/t1gload.c (T1_Get_Advances): New
  1.4238 +	function.
  1.4239 +	* src/type1/t1driver.c (t1_driver_class): Register T1_Get_Advances.
  1.4240 +
  1.4241 +
  1.4242 +	Add checks for minimum version of the `autotools' stuff.
  1.4243 +
  1.4244 +	* autogen.sh: Implement it.
  1.4245 +	(get_major_version, get_minor_version, get_patch_version,
  1.4246 +	compare_to_minimum_version, check_tool_version): New auxiliary
  1.4247 +	functions.
  1.4248 +
  1.4249 +	* README.CVS: Document it.
  1.4250 +
  1.4251 +2008-08-29  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4252 +
  1.4253 +	* src/sfnt/sfobjs.c (sfnt_open_font): Use TTAG_OTTO defined in
  1.4254 +	ttags.h instead of FT_MAKE_TAG( 'O', 'T', 'T', 'O' ).
  1.4255 +
  1.4256 +2008-08-28  Werner Lemberg  <wl@gnu.org>
  1.4257 +
  1.4258 +	* src/type1/t1load.c (parse_encoding): Protect against infinite
  1.4259 +	loop.  This fixes Savannah bug #24150 (where a patch has been posted
  1.4260 +	too).
  1.4261 +
  1.4262 +2008-08-23  Werner Lemberg  <wl@gnu.org>
  1.4263 +
  1.4264 +	* src/type/t1afm.c (compare_kern_pairs), src/pxaux/afmparse.c
  1.4265 +	(afm_compare_kern_pairs): Fix comparison.  This fixes Savannah bug
  1.4266 +	#24119.
  1.4267 +
  1.4268 +2008-08-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4269 +
  1.4270 +	* src/base/ftobjs.c (FT_Stream_New): Initialize *astream always,
  1.4271 +	even if passed library or arguments are invalid.  This fixes a bug
  1.4272 +	that an uninitialized stream is freed when an invalid library handle
  1.4273 +	is passed.  Originally proposed by Mike Fabian, 2008/08/18 on
  1.4274 +	freetype-devel.
  1.4275 +	(FT_Open_Face): Ditto (stream).
  1.4276 +	(load_face_in_embedded_rfork): Ditto (stream2).
  1.4277 +
  1.4278 +2008-08-18  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4279 +
  1.4280 +	* src/base/ftmac.c: Add a fallback to guess the availability of the
  1.4281 +	`ResourceIndex' type.  It is used when built without configure
  1.4282 +	(e.g., a build with Jam).
  1.4283 +	* builds/mac/ftmac.c: Ditto.
  1.4284 +	* builds/unix/configure.raw: Set HAVE_TYPE_RESOURCE_INDEX to 1 or 0
  1.4285 +	explicitly, even if `ResourceIndex' is unavailable.
  1.4286 +
  1.4287 +2008-08-18  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4288 +
  1.4289 +	* builds/unix/configure.raw: In checking of Mac OS X features,
  1.4290 +	all-in-one header file `Carbon.h' is replaced by the minimum
  1.4291 +	header file `CoreServices.h', similar to current src/base/ftmac.c.
  1.4292 +
  1.4293 +2008-08-18  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4294 +
  1.4295 +	* src/sfnt/ttcmap.c (tt_cmap2_validate): Skip the validation of
  1.4296 +	sub-header when its code_count is 0.  Many Japanese Dynalab fonts
  1.4297 +	include such an empty sub-header (code_count == 0, first_code == 0
  1.4298 +	delta == 0, but offset != 0) as the second sub-header in SJIS cmap.
  1.4299 +
  1.4300 +2008-08-04  Werner Lemberg  <wl@gnu.org>
  1.4301 +
  1.4302 +	* src/type1/t1tokens.h: Handle `ForceBold' keyword.  This fixes
  1.4303 +	Savannah bug #23995.
  1.4304 +
  1.4305 +	* src/cid/cidload.c (parse_expansion_factor): New callback function.
  1.4306 +	(cid_field_records): Use it for `ExpansionFactor'.
  1.4307 +	* src/cod/cidtoken.h: Handle `ForceBold' keyword.
  1.4308 +	Don't handle `ExpansionFactor'.
  1.4309 +
  1.4310 +2008-08-04  Bram Tassyns  <bramt@enfocus.be>
  1.4311 +
  1.4312 +	* src/cff/cffparse.c (cff_parse_fixed_scaled): Fix thinko which
  1.4313 +	resulted in incorrect scaling.  This fixes Savannah bug #23973.
  1.4314 +
  1.4315 +2008-08-04  Werner Lemberg  <wl@gnu.org>
  1.4316 +
  1.4317 +	Be more tolerant w.r.t. invalid entries in SFNT table directory.
  1.4318 +
  1.4319 +	* src/sfnt/ttload.c (check_table_dir): Ignore invalid entries and
  1.4320 +	adjust table count.
  1.4321 +	Add more trace messages.
  1.4322 +	(tt_face_load_font_dir): Updated.
  1.4323 +
  1.4324 +2008-07-30  Werner Lemberg  <wl@gnu.org>
  1.4325 +
  1.4326 +	* src/cff/cffgload.c (cff_decoder_parse_charstrings): No longer
  1.4327 +	assume that the first argument on the stack is the bottom-most
  1.4328 +	element.  Two reasons:
  1.4329 +
  1.4330 +	  o According to people from Adobe it is missing in the Type 2
  1.4331 +	    specification that pushing of additional, superfluous arguments
  1.4332 +	    on the stack is prohibited.
  1.4333 +
  1.4334 +	  o Acroread in general handles fonts differently, namely by popping
  1.4335 +	    the number of arguments needed for a particular operand (as a PS
  1.4336 +	    interpreter would do).  In case of buggy fonts this causes a
  1.4337 +	    different interpretation which of the elements on the stack are
  1.4338 +	    superfluous and which not.
  1.4339 +
  1.4340 +	Since there are CFF subfonts (embedded in PDFs) which rely on
  1.4341 +	Acroread's behaviour, FreeType now does the same.
  1.4342 +
  1.4343 +2008-07-27  Werner Lemberg  <wl@gnu.org>
  1.4344 +
  1.4345 +	Add extra mappings for `Tcommaaccent' and `tcommaaccent'.  This
  1.4346 +	fixes Savannah bug #23940.
  1.4347 +
  1.4348 +	* src/psnames/psmodule.c (WGL_EXTRA_LIST_SIZE): Rename to...
  1.4349 +	(EXTRA_GLYPH_LIST_SIZE): This.
  1.4350 +	Increase by 2.
  1.4351 +	(ft_wgl_extra_unicodes): Rename to...
  1.4352 +	(ft_extra_glyph_unicodes): This.
  1.4353 +	Add two code values.
  1.4354 +	(ft_wgl_extra_glyph_names): Rename to...
  1.4355 +	(ft_extra_glyph_names): This.
  1.4356 +	Add two glyphs.
  1.4357 +	(ft_wgl_extra_glyph_name_offsets): Rename to...
  1.4358 +	(ft_extra_glyph_name_offsets): This.
  1.4359 +	Add two offsets.
  1.4360 +
  1.4361 +	(ps_check_wgl_name, ps_check_wgl_unicode): Rename to...
  1.4362 +	(ps_check_extra_glyph_name, ps_check_extra_glyph_unicode): This.
  1.4363 +	Updated.
  1.4364 +	(ps_unicodes_init): Updated.
  1.4365 +
  1.4366 +2008-07-26  Werner Lemberg  <wl@gnu.org>
  1.4367 +
  1.4368 +	* src/cff/cffgload.c (cff_decoder_prepare,
  1.4369 +	cff_decoder_parse_charstrings): Improve debug output.
  1.4370 +
  1.4371 +2008-07-22  Martin McBride  <mmcbride@emtex.com>
  1.4372 +
  1.4373 +	* src/sfnt/ttcmap.c (tt_cmap4_validate, tt_cmap4_char_map_linear,
  1.4374 +	tt_cmap4_char_map_binary): Handle fonts which treat the last segment
  1.4375 +	specially.  According to the specification, such fonts would be
  1.4376 +	invalid but acroread accepts them.
  1.4377 +
  1.4378 +2008-07-16  Jon Foster  <Jon.Foster@cabot.co.uk>
  1.4379 +
  1.4380 +	* src/pfr/pfrdrivr.c (pfr_get_advance): Fix off-by-one error.
  1.4381 +
  1.4382 +	* src/base/ftcalc.c (FT_MulFix): Fix portability issue.
  1.4383 +
  1.4384 +	* src/sfnt/ttpost.c (MAC_NAME) [!FT_CONFIG_OPTION_POSTSCRIPT_NAMES]:
  1.4385 +	Fix compiler warning.
  1.4386 +
  1.4387 +2008-07-16  Werner Lemberg  <wl@gnu.org>
  1.4388 +
  1.4389 +	Handle CID-keyed fonts wrapped in an SFNT (with cmaps) correctly.
  1.4390 +
  1.4391 +	* src/cff/cffload.c (cff_font_load): Pass `pure_cff'.
  1.4392 +	Invert sids table only if `pure_cff' is set.
  1.4393 +	* src/cff/cffload.h: Udpated.
  1.4394 +
  1.4395 +	* src/cff/cffobjs.c (cff_face_init): Updated.
  1.4396 +	Set FT_FACE_FLAG_CID_KEYED only if pure_cff is set.
  1.4397 +
  1.4398 +	* docs/CHANGES: Updated.
  1.4399 +
  1.4400 +2008-07-09  Werner Lemberg  <wl@gnu.org>
  1.4401 +
  1.4402 +	* src/truetype/ttpload.c (tt_face_load_loca): Handle buggy fonts
  1.4403 +	where num_locations < num_glyphs.  Problem reported by Ding Li.
  1.4404 +
  1.4405 +2008-07-05  Werner Lemberg  <wl@gnu.org>
  1.4406 +
  1.4407 +	Since FreeType uses `$(value ...)', we now need GNU make 3.80 or
  1.4408 +	newer.  This fixes Savannah bug #23648.
  1.4409 +
  1.4410 +	* configure: zsh doesn't like ${1+"$@"}.
  1.4411 +	Update needed GNU make version.
  1.4412 +	* builds/toplevel.mk: Check for `$(eval ...)'.
  1.4413 +	* docs/INSTALL.GNU, docs/INSTALL.CROSS, docs/INSTALL.UNIX: Document
  1.4414 +	it.
  1.4415 +
  1.4416 +2008-07-04  Werner Lemberg  <wl@gnu.org>
  1.4417 +
  1.4418 +	* src/raster/ftraster.c (Draw_Sweep): If span is smaller than one
  1.4419 +	pixel, only check for dropouts if neither start nor end point lies
  1.4420 +	on a pixel center.  This fixes Savannah bug #23762.
  1.4421 +
  1.4422 +2008-06-29  Werner Lemberg  <wl@gnu.org>
  1.4423 +
  1.4424 +	* Version 2.3.7 released.
  1.4425 +	=========================
  1.4426 +
  1.4427 +
  1.4428 +	Tag sources with `VER-2-3-7'.
  1.4429 +
  1.4430 +	* docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
  1.4431 +	version number to 2.3.7.
  1.4432 +
  1.4433 +	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
  1.4434 +	builds/win32/visualc/freetype.dsp,
  1.4435 +	builds/win32/visualc/freetype.vcproj,
  1.4436 +	builds/win32/visualce/index.html,
  1.4437 +	builds/win32/visualce/freetype.dsp,
  1.4438 +	builds/win32/visualce/freetype.vcproj: s/2.3.6/2.3.7/, s/236/237/.
  1.4439 +
  1.4440 +	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 7.
  1.4441 +
  1.4442 +	* builds/unix/configure.raw (version_info): Set to 9:18:3.
  1.4443 +
  1.4444 +	* docs/release: Updated.
  1.4445 +
  1.4446 +2008-06-28  Werner Lemberg  <wl@gnu.org>
  1.4447 +
  1.4448 +	* src/ftglyph.c (FT_Matrix_Multiply, FT_Matrix_Invert): Move to...
  1.4449 +	* src/ftcalc.c: Here.  This fixes Savannah bug #23729.
  1.4450 +
  1.4451 +2008-06-27  Werner Lemberg  <wl@gnu.org>
  1.4452 +
  1.4453 +	* src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop,
  1.4454 +	Horizontal_Gray_Sweep_Drop): Test for intersections which
  1.4455 +	degenerate to a single point can be ignored; this has been confirmed
  1.4456 +	by Greg Hitchcock from Microsoft.  (This was commented out code.)
  1.4457 +
  1.4458 +2008-06-26  Werner Lemberg  <wl@gnu.org>
  1.4459 +
  1.4460 +	Improve navigation in API reference.
  1.4461 +
  1.4462 +	* src/tools/docmaker/tohtml.py (html_header_3): Renamed to...
  1.4463 +	(html_header_6): This.
  1.4464 +	(html_header_3, html_header_3i, html_header_4, html_header_5,
  1.4465 +	html_header_5t): New strings.
  1.4466 +	(toc_footer_start, toc_footer_end): New strings.
  1.4467 +	(HtmlFormatter::html_header): Updated.
  1.4468 +	(HtmlFormatter::html_index_header, HtmlFormatter::html_toc_header):
  1.4469 +	New strings.
  1.4470 +	(HtmlFormatter::index_enter): Use `html_index_header'.
  1.4471 +	(HtmlFormatter::index_exit): Print `html_footer'.
  1.4472 +	(HtmlFormatter::toc_enter): Use `html_toc_header'.
  1.4473 +	(HtmlFormatter::toc_exit): Print proper footer.
  1.4474 +
  1.4475 +	Convert ~ to non-breakable space.
  1.4476 +
  1.4477 +	* src/tools/docmaker/tohtml.py (make_html_para): Implement it.
  1.4478 +	Update header files accordingly.
  1.4479 +
  1.4480 +2008-06-24  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4481 +
  1.4482 +	* builds/unix/configure.raw: Check type `ResourceIndex' explicitly
  1.4483 +	and define HAVE_TYPE_RESOURCE_INDEX if it is defined.  Mac OS X 10.5
  1.4484 +	bundles 10.4u SDK with MAC_OS_X_VERSION_10_5 macro but without
  1.4485 +	ResourceIndex type definition.  The macro does not inform the type
  1.4486 +	availability.
  1.4487 +	* src/base/ftmac.c: More parentheses are inserted to clarify the
  1.4488 +	conditionals to disable legacy APIs in `10.5 and later' cases.  If
  1.4489 +	HAVE_TYPE_RESOURCE_INDEX is not defined, ResourceIndex is defined.
  1.4490 +
  1.4491 +2008-06-24  Werner Lemberg  <wl@gnu.org>
  1.4492 +
  1.4493 +	* src/truetype/ttinterp.c (Ins_SCANTYPE): Don't check rendering
  1.4494 +	mode.
  1.4495 +
  1.4496 +	* src/raster/ftraster.c (Render_Glyph, Render_Gray_Glyph,
  1.4497 +	Draw_Sweep): No-dropout mode is value 2, not value 0.
  1.4498 +	(Draw_Sweep): Really skip dropout handling for no-dropout mode.
  1.4499 +
  1.4500 +2008-06-24  Werner Lemberg  <wl@gnu.org>
  1.4501 +
  1.4502 +	* src/psaux/psobjs.c (t1_builder_close_contour): Don't add contour
  1.4503 +	if it consists of one point only.  Based on a patch from Savannah
  1.4504 +	bug #23683 (from John Tytgat).
  1.4505 +
  1.4506 +2008-06-22  Werner Lemberg  <wl@gnu.org>
  1.4507 +
  1.4508 +	* src/truetype/ttgload.c (TT_Load_Glyph): Protect bytecode stuff
  1.4509 +	with IS_HINTED.
  1.4510 +
  1.4511 +	* docs/CHANGES: Updated.
  1.4512 +
  1.4513 +2008-06-22  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4514 +
  1.4515 +	* builds/unix/configure.raw: If CFLAGS has `-isysroot XXX' option
  1.4516 +	but LDFLAGS does not, import it to LDFLAGS.  The option is used to
  1.4517 +	specify non-default SDK on Mac OS X (e.g., universal binary SDK for
  1.4518 +	Mac OS X 10.4 on PowerPC platform).  Although Apple TechNote 2137
  1.4519 +	recommends to add the option only to CFLAGS, LDFLAGS should include
  1.4520 +	it because libfreetype.la is built with -no-undefined.  This fixes a
  1.4521 +	bug reported by Ryan Schmidt in MacPorts,
  1.4522 +	http://trac.macports.org/ticket/15331.
  1.4523 +
  1.4524 +2008-06-21  Werner Lemberg  <wl@gnu.org>
  1.4525 +
  1.4526 +	Enable access to the various dropout rules of the B&W rasterizer.
  1.4527 +	Pass dropout rules from the TT bytecode interpreter to the
  1.4528 +	rasterizer.
  1.4529 +
  1.4530 +	* include/freetype/ftimage.h (FT_OUTLINE_SMART_DROPOUTS,
  1.4531 +	FT_OUTLINE_EXCLUDE_STUBS): New flags for FT_Outline.
  1.4532 +
  1.4533 +	* src/raster/ftraster.c (Vertical_Sweep_Drop, Horizontal_Sweep_Drop,
  1.4534 +	Horizontal_Gray_Sweep_Drop): Use same mode numbers as given in the
  1.4535 +	OpenType specification.
  1.4536 +	Fix mode 4 computation.
  1.4537 +	(Render_Glyph, Render_Gray_Glyph): Handle new outline flags.
  1.4538 +
  1.4539 +	* src/truetype/ttgload.c (TT_Load_Glyph) Convert scan conversion
  1.4540 +	mode to FT_OUTLINE_XXX flags.
  1.4541 +
  1.4542 +	* src/truetype/ttinterp.c (Ins_SCANCTRL): Enable ppem check.
  1.4543 +
  1.4544 +2008-06-19  Werner Lemberg  <wl@gnu.org>
  1.4545 +
  1.4546 +	* src/cff/cffobjs.c (cff_face_init): Compute final
  1.4547 +	`dict->units_per_em' value before assigning it to
  1.4548 +	`cffface->units_per_EM'.  Otherwise, CFFs without subfonts are
  1.4549 +	scaled incorrectly if the font matrix is non-standard.  This fixes
  1.4550 +	Savannah bug #23630.
  1.4551 +
  1.4552 +	* docs/CHANGES: Updated.
  1.4553 +
  1.4554 +2008-06-19  Werner Lemberg  <wl@gnu.org>
  1.4555 +
  1.4556 +	* src/type/t1objs.c (T1_Face_Init): Slightly improve algorithm fix
  1.4557 +	from 2008-06-19.
  1.4558 +
  1.4559 +2008-06-18  Werner Lemberg  <wl@gnu.org>
  1.4560 +
  1.4561 +	* src/type/t1objs.c (T1_Face_Init): Fix change from 2008-03-21.
  1.4562 +	Reported by Peter Weilbacher <mozilla@weilbacher.org>.
  1.4563 +
  1.4564 +	* docs/CHANGES: Updated.
  1.4565 +
  1.4566 +2008-06-15  George Williams  <gww@silcom.com>
  1.4567 +
  1.4568 +	* src/otvalid/otvgpos.c (otv_MarkBasePos_validate): Set
  1.4569 +	`valid->extra2' to 1.  This is undocumented in the OpenType 1.5
  1.4570 +	specification.
  1.4571 +
  1.4572 +2008-06-15  Werner Lemberg  <wl@gnu.org>
  1.4573 +
  1.4574 +	* src/base/ftcalc.c (FT_MulFix) <asm>: Protect registers correctly
  1.4575 +	from clobbering.  Patch from Savannah bug report #23556.
  1.4576 +
  1.4577 +	* docs/CHANGES: Document it.
  1.4578 +
  1.4579 +2008-06-10  Werner Lemberg  <wl@gnu.org>
  1.4580 +
  1.4581 +	* autogen.sh: Add option `--install' to libtoolize.
  1.4582 +
  1.4583 +2008-06-10  Werner Lemberg  <wl@gnu.org>
  1.4584 +
  1.4585 +	* Version 2.3.6 released.
  1.4586 +	=========================
  1.4587 +
  1.4588 +
  1.4589 +	Tag sources with `VER-2-3-6'.
  1.4590 +
  1.4591 +	* docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
  1.4592 +	version number to 2.3.6.
  1.4593 +
  1.4594 +	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
  1.4595 +	builds/win32/visualc/freetype.dsp,
  1.4596 +	builds/win32/visualc/freetype.vcproj,
  1.4597 +	builds/win32/visualce/index.html,
  1.4598 +	builds/win32/visualce/freetype.dsp,
  1.4599 +	builds/win32/visualce/freetype.vcproj: s/2.3.5/2.3.6/, s/235/236/.
  1.4600 +
  1.4601 +	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 6.
  1.4602 +
  1.4603 +	* builds/unix/configure.raw (version_info): Set to 9:17:3.
  1.4604 +
  1.4605 +
  1.4606 +	* include/freetype/internal/psaux.h (T1_BuilderRec): Remove `scale_x'
  1.4607 +	and `scale_y'.
  1.4608 +	* src/cff/cffgload.h (CFF_Builder): Remove `scale_x' and `scale_y'.
  1.4609 +
  1.4610 +
  1.4611 +	* src/cff/cffparse.c: Include FT_INTERNAL_DEBUG_H.
  1.4612 +	* src/cff/cffobjs.h: Include FT_INTERNAL_POSTSCRIPT_HINTS_H.
  1.4613 +
  1.4614 +2008-06-10  Werner Lemberg  <wl@gnu.org>
  1.4615 +
  1.4616 +	* src/base/ftobjs.c (open_face): Check `clazz->init_face' and
  1.4617 +	`clazz->done_face'.
  1.4618 +
  1.4619 +2008-06-09  VaDiM  <s_sliva@rambler.ru>
  1.4620 +
  1.4621 +	Support debugging on WinCE.  From Savannah patch #6536; this fixes
  1.4622 +	bug #23497.
  1.4623 +
  1.4624 +	* builds/win32/ftdebug.c (OutputDebugStringEx): New function/macro
  1.4625 +	as a replacement for OutputDebugStringA (which WinCE doesn't have).
  1.4626 +	Update all callers.
  1.4627 +	(ft_debug_init) [_WIN32_CE]: WinCE apparently doesn't have
  1.4628 +	environment variables.
  1.4629 +
  1.4630 +2008-06-09  Werner Lemberg  <wl@gnu.org>
  1.4631 +
  1.4632 +	* README.CVS: Updated.
  1.4633 +
  1.4634 +	* builds/unix/configure.raw, builds/unix/freetype-config.in: Updated
  1.4635 +	for newer versions of autoconf and friends.
  1.4636 +
  1.4637 +2008-06-08  Werner Lemberg  <wl@gnu.org>
  1.4638 +
  1.4639 +	* src/type1/t1parse.h (T1_ParserRec): Make `base_len' and
  1.4640 +	`private_len' unsigned.
  1.4641 +
  1.4642 +	* src/type1/t1parse.c (read_pfb_tag): Make `asize' unsigned and read
  1.4643 +	it as such.
  1.4644 +	(T1_New_Parser, T1_Get_Private_Dict): Make `size' unsigned.
  1.4645 +
  1.4646 +
  1.4647 +	* src/base/ftstream.c (FT_Stream_Skip): Reject negative values.
  1.4648 +
  1.4649 +
  1.4650 +	* src/type1/t1load.c (parse_blend_design_positions): Check `n_axis'
  1.4651 +	for sane value.
  1.4652 +	Fix typo.
  1.4653 +
  1.4654 +
  1.4655 +	* src/psaux/psobjs.c (ps_table_add): Check `idx' correctly.
  1.4656 +
  1.4657 +
  1.4658 +	* src/truetype/ttinterp (Ins_SHC): Use BOUNDS() to check
  1.4659 +	`last_point'.
  1.4660 +
  1.4661 +
  1.4662 +	* src/sfnt/ttload.c (tt_face_load_max_profile): Limit
  1.4663 +	`maxTwilightPoints'.
  1.4664 +
  1.4665 +2008-06-06  Werner Lemberg  <wl@gnu.org>
  1.4666 +
  1.4667 +	* src/truetype/ttinterp.c (Ins_IP): Handle case `org_dist == 0'
  1.4668 +	correctly.  This fixes glyphs `t' and `h' of Arial Narrow at 12ppem.
  1.4669 +
  1.4670 +2008-06-03  Werner Lemberg  <wl@gnu.org>
  1.4671 +
  1.4672 +	* include/freetype/ftcache.h (FTC_FaceID): Change type back to
  1.4673 +	FT_Pointer.  Reported by Ian Britten <britten@caris.com>.
  1.4674 +
  1.4675 +2008-06-02  Werner Lemberg  <wl@gnu.org>
  1.4676 +
  1.4677 +	Emit header info for defined FreeType objects in reference.
  1.4678 +
  1.4679 +	* src/tools/docmaker/content.py (re_header_macro): New regexp.
  1.4680 +	(ContentProcessor::__init__): Initialize new dictionary `headers'.
  1.4681 +	(DocBlock::__init__): Collect macro header definitions.
  1.4682 +
  1.4683 +	* src/tools/docmaker/tohtml.py (header_location_header,
  1.4684 +	header_location_footer): New strings.
  1.4685 +	(HtmlFormatter::__init__): Pass `headers' dictionary.
  1.4686 +	(HtmlFormatter::print_html_field): Don't emit paragraph tags.
  1.4687 +	(HtmlFormatter::print_html_field_list): Emit empty paragraph.
  1.4688 +	(HtmlFormatter::block_enter): Emit header info.
  1.4689 +
  1.4690 +2008-06-01  Werner Lemberg  <wl@gnu.org>
  1.4691 +
  1.4692 +	* include/freetype/config/ftheader.h (FT_UNPATENTED_HINTING_H,
  1.4693 +	FT_INCREMENTAL_H): Added.
  1.4694 +
  1.4695 +2008-05-28  Werner Lemberg  <wl@gnu.org>
  1.4696 +
  1.4697 +	* src/tools/docmaker/sources.py (SourceBlock::__init__): While
  1.4698 +	looking for markup tags, return immediately as soon a single one is
  1.4699 +	found.
  1.4700 +
  1.4701 +2008-05-28  Werner Lemberg  <wl@gnu.org>
  1.4702 +
  1.4703 +	* src/truetype/ttinterp.c (Ins_MD): The MD instruction also uses
  1.4704 +	original, unscaled input values.  Confirmed by Greg Hitchcock from
  1.4705 +	Microsoft.
  1.4706 +
  1.4707 +2008-05-27  Werner Lemberg  <wl@gnu.org>
  1.4708 +
  1.4709 +	* src/tools/docmaker/tohtml.py (block_footer_start,
  1.4710 +	block_footer_middle): Beautify output.
  1.4711 +
  1.4712 +2008-05-25  Werner Lemberg  <wl@gnu.org>
  1.4713 +
  1.4714 +	* src/raster/ftraster.c (fc_black_render): Return 0 when we are
  1.4715 +	trying to render into a zero-width/height bitmap, not an error code.
  1.4716 +
  1.4717 +	* src/truetype/ttgload.c (load_truetype_glyph): Move initialization
  1.4718 +	of the graphics state for subglyphs to...
  1.4719 +	(TT_Hint_Glyph): This function.
  1.4720 +	Hinting instructions for a composite glyph apparently refer to the
  1.4721 +	just hinted subglyphs, not the unhinted, unscaled outline.  This
  1.4722 +	seems to fix Savannah bugs #20973 and (at least partially) #23310.
  1.4723 +
  1.4724 +2008-05-20  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4725 +
  1.4726 +	* src/base/ftmac.c (FT_New_Face_From_Suitcase): Check if valid
  1.4727 +	`aface' is returned by FT_New_Face_From_FOND().  The patch was
  1.4728 +	proposed by an anonymous reporter of Savannah bug #23204.
  1.4729 +
  1.4730 +2008-05-18  Werner Lemberg  <wl@gnu.org>
  1.4731 +
  1.4732 +	* src/pshinter/pshalgo.c (ps_hints_apply): Reset scale values after
  1.4733 +	correction for pixel boundary.  Without this patch, the effect can
  1.4734 +	be cumulative under certain circumstances, making glyphs taller and
  1.4735 +	taller after each call.  This fixes Savannah bug #19976.
  1.4736 +
  1.4737 +2008-05-18  Werner Lemberg  <wl@gnu.org>
  1.4738 +
  1.4739 +	* src/base/ftdebug.c (FT_Message, FT_Panic): Send output to stderr.
  1.4740 +	This fixes Savannah bug #23280.
  1.4741 +
  1.4742 +	* docs/CHANGES: Updated.
  1.4743 +
  1.4744 +2008-05-18  David Turner  <david@freetype.org>
  1.4745 +
  1.4746 +	* src/psnames/psmodule.c (ft_wgl_extra_unicodes,
  1.4747 +	ft_wgl_extra_glyph_names, ft_wgl_extra_glyph_name_offsets,
  1.4748 +	ps_check_wgl_name, ps_check_wgl_unicode): Use `static' to make
  1.4749 +	declarations non-global.
  1.4750 +
  1.4751 +	* src/type1/t1load.c: Add missing comment.
  1.4752 +
  1.4753 +2008-05-17  Sam Hocevar  <samh>
  1.4754 +
  1.4755 +	* src/truetype/ttgload.c (TT_Load_Simple_Glyph): Handle zero-contour
  1.4756 +	glyphs correctly.  Patch from Savannah bug #23277.
  1.4757 +
  1.4758 +2008-05-16  Werner Lemberg  <wl@gnu.org>
  1.4759 +
  1.4760 +	* docs/CHANGES: Updated.
  1.4761 +
  1.4762 +2008-05-16  Sergey Tolstov  <stolstov@esri.com>
  1.4763 +
  1.4764 +	Improve support for WGL4 encoded fonts.
  1.4765 +
  1.4766 +	* src/psnames/psmodule.c (WGL_EXTRA_LIST_SIZE): New macro.
  1.4767 +	(ft_wgl_extra_unicodes, ft_wgl_extra_glyph_names,
  1.4768 +	ft_wgl_extra_glyph_name_offsets): New arrays.
  1.4769 +	(ps_check_wgl_name, ps_check_wgl_unicode): New functions.
  1.4770 +	(ps_unicodes_init): Use them to add additional Unicode mappings.
  1.4771 +
  1.4772 +2008-05-15  Werner Lemberg  <wl@gnu.org>
  1.4773 +
  1.4774 +	* src/psaux/t1decode.c (t1_decoder_parse_charstrings)
  1.4775 +	<op_closepath>: `closepath' without a path is a no-op, not an error
  1.4776 +	(cf. the PS reference manual).
  1.4777 +
  1.4778 +	Reported by Martin McBride.
  1.4779 +
  1.4780 +2008-05-15  Werner Lemberg  <wl@gnu.org>
  1.4781 +
  1.4782 +	* builds/toplevel.mk (CONFIG_GUESS, CONFIG_SUB): Updated.
  1.4783 +
  1.4784 +2008-05-15  Werner Lemberg  <wl@gnu.org>
  1.4785 +
  1.4786 +	* src/type1/t1load.c (parse_subrs): Accept fonts with a subrs array
  1.4787 +	which contains a single but empty entry.  This is technically
  1.4788 +	invalid (since it must end with `return'), but...
  1.4789 +
  1.4790 +	Reported by Martin McBride.
  1.4791 +
  1.4792 +2008-05-14  Werner Lemberg  <wl@gnu.org>
  1.4793 +
  1.4794 +	Finish fix of scaling bug of CID-keyed CFF subfonts.
  1.4795 +
  1.4796 +	* include/freetype/internal/ftcalc.h, src/base/ftcalc.c
  1.4797 +	(FT_Matrix_Multiply_Scaled, FT_Vector_Transform_Scaled): New
  1.4798 +	functions.
  1.4799 +
  1.4800 +	* src/cff/cffobjs.h (CFF_Internal): New struct.  It is used to
  1.4801 +	provide global hinting data for both the top-font and all subfonts
  1.4802 +	(with proper scaling).
  1.4803 +
  1.4804 +	* src/cff/cffobjs.c (cff_make_private_dict): New function, using
  1.4805 +	code from `cff_size_init'.
  1.4806 +	(cff_size_init, cff_size_done, cff_size_select, cff_size_request):
  1.4807 +	Use CFF_Internal and handle subfonts.
  1.4808 +	(cff_face_init): Handle top-dict and subfont matrices correctly;
  1.4809 +	apply some heuristic in case of unlikely matrix concatenation
  1.4810 +	results.  This has been discussed with people from Adobe (thanks
  1.4811 +	goes mainly to David Lemon) who confirm that the CFF specs are fuzzy
  1.4812 +	and not correct.
  1.4813 +
  1.4814 +	* src/cff/cffgload.h (cff_decoder_prepare): Add `size' argument.
  1.4815 +
  1.4816 +	* src/cff/cffgload.c (cff_builder_init): Updated.
  1.4817 +	(cff_decoder_prepare): Handle hints globals for subfonts.
  1.4818 +	Update all callers.
  1.4819 +	(cff_slot_load): Handling scaling of subfonts properly.
  1.4820 +
  1.4821 +	* src/cff/cffparse.c (cff_parse_fixed_dynamic): New function.
  1.4822 +	(cff_parse_font_matrix): Use it.
  1.4823 +
  1.4824 +	* src/cff/cfftypes.h (CFF_FontDictRec): Make `units_per_em'
  1.4825 +	FT_ULong.
  1.4826 +
  1.4827 +	* docs/CHANGES: Document it.
  1.4828 +
  1.4829 +2008-05-13  Werner Lemberg  <wl@gnu.org>
  1.4830 +
  1.4831 +	* src/winfonts/winfnt.c (fnt_face_get_dll_font, FNT_Face_Init):
  1.4832 +	Handle case `face_index < 0'.
  1.4833 +	* docs/CHANGES: Document it.
  1.4834 +
  1.4835 +2008-05-04  Werner Lemberg  <wl@gnu.org>
  1.4836 +
  1.4837 +	First steps to fix the scaling bug of CID-keyed CFF subfonts,
  1.4838 +	reported by Ding Li on 2008/03/28 on freetype-devel.
  1.4839 +
  1.4840 +	* src/base/cff/cffparse.c (power_tens): New array.
  1.4841 +	(cff_parse_real): Rewritten to introduce a fourth parameter which
  1.4842 +	returns the `scaling' of the real number so that we have no
  1.4843 +	precision loss.  This is not used yet.
  1.4844 +	Update all callers.
  1.4845 +	(cff_parse_fixed_thousand): Replace with...
  1.4846 +	(cff_parse_fixed_scaled): This function.  Update all callers.
  1.4847 +
  1.4848 +2008-05-03  Werner Lemberg  <wl@gnu.org>
  1.4849 +
  1.4850 +	* src/base/ftobjs.c (FT_Load_Glyph): Call the auto-hinter without
  1.4851 +	transformation since it recursively calls FT_Load_Glyph.  This fixes
  1.4852 +	Savannah bug #23143.
  1.4853 +
  1.4854 +2008-04-26  Werner Lemberg  <wl@gnu.org>
  1.4855 +
  1.4856 +	* include/freetype/internal/psaux.h (T1_BuilderRec): Mark `scale_x'
  1.4857 +	and `scale_y' as obsolete since they aren't used.
  1.4858 +	* src/psaux/psobjs.c (t1_builder_init): Updated.
  1.4859 +
  1.4860 +	* src/cff/cffgload.h (CFF_Builder): Mark `scale_x' and `scale_y' as
  1.4861 +	obsolete since they aren't used.
  1.4862 +	* src/cff/cffgload.c (cff_builder_init): Updated.
  1.4863 +
  1.4864 +2008-04-14  Werner Lemberg  <wl@gnu.org>
  1.4865 +
  1.4866 +	* src/pcf/pcfdrivr.c (PCF_Face_Init): Protect call to
  1.4867 +	`FT_Stream_OpenLZW' with `FT_CONFIG_OPTION_USE_LZ'.  From Savannah
  1.4868 +	bug #22909.
  1.4869 +
  1.4870 +2008-04-13  Werner Lemberg  <wl@gnu.org>
  1.4871 +
  1.4872 +	* src/psaux/psconv.c (PS_Conv_ToFixed): Increase precision if
  1.4873 +	integer part is zero.
  1.4874 +
  1.4875 +2008-04-01  Werner Lemberg  <wl@gnu.org>
  1.4876 +
  1.4877 +	Fix compilation with g++ 4.1 (with both `single' and `multi'
  1.4878 +	targets).
  1.4879 +
  1.4880 +	* src/base/ftobjs.c (FT_Open_Face): Don't define a variable in block
  1.4881 +	which is crossed by a `goto'.
  1.4882 +
  1.4883 +	* src/otvalid/otvalid.h (otv_MATH_validate): Add prototype.
  1.4884 +
  1.4885 +2008-03-31  Werner Lemberg  <wl@gnu.org>
  1.4886 +
  1.4887 +	Fix support for subsetted CID-keyed CFFs.
  1.4888 +
  1.4889 +	* include/freetype/freetype.h (FT_FACE_FLAG_CID_KEYED,
  1.4890 +	FT_IS_CID_KEYED): New macros.
  1.4891 +
  1.4892 +	* src/cff/cffobjs.c (cff_face_init): Set number of glyphs to the
  1.4893 +	maximum CID value in CID-keyed CFFs.
  1.4894 +	Handle FT_FACE_FLAG_CID_KEYED flag.
  1.4895 +
  1.4896 +	* docs/CHANGES: Document it.
  1.4897 +
  1.4898 +
  1.4899 +	Fix CFF font matrix calculation and improve precision.
  1.4900 +
  1.4901 +	* src/cff/cffparse.c (cff_parse_real): Increase precision if integer
  1.4902 +	part is zero.
  1.4903 +	(cff_parse_font_matrix): Simplify computation of `units_per_em';
  1.4904 +	this prevents overflow also.
  1.4905 +
  1.4906 +
  1.4907 +	Support FT_Get_CID_Registry_Ordering_Supplement for PS CID fonts.
  1.4908 +
  1.4909 +	* src/cid/cidriver.c: Include FT_SERVICE_CID_H.
  1.4910 +	(cid_get_ros): New function.
  1.4911 +	(cid_service_cid_info): New service structure.
  1.4912 +	(cid_services): Register it.
  1.4913 +
  1.4914 +2008-03-23  Werner Lemberg  <wl@gnu.org>
  1.4915 +
  1.4916 +	Adjustments for Visual C++ 8.0, as reported by Rainer Deyke.
  1.4917 +
  1.4918 +	* builds/compiler/visualc.mk (CFLAGS): Remove /W5.
  1.4919 +	(ANSIFLAGS): Add _CRT_SECURE_NO_DEPRECATE.
  1.4920 +
  1.4921 +2008-03-21  Laurence Darby  <ldarby>
  1.4922 +
  1.4923 +	* src/type1/t1objs.c (T1_Face_Init): Use `/Weight'.  Patch from
  1.4924 +	Savannah bug #22675.
  1.4925 +
  1.4926 +2008-03-13  Derek Clegg  <dclegg@apple.com>
  1.4927 +
  1.4928 +	* src/truetype/ttgxvar.c (TT_Get_MM_Var): Fix named style loop.
  1.4929 +	Patch from Savannah bug #22541.
  1.4930 +
  1.4931 +2008-03-03  Masatoshi Kimura  <VYV03354@nifty.ne.jp>
  1.4932 +
  1.4933 +	* src/sfnt/ttcmap.c (tt_cmap14_char_map_nondef_binary,
  1.4934 +	tt_cmap14_find_variant): Return correct value.
  1.4935 +	(tt_cmap14_variant_chars): Fix check for `di'.
  1.4936 +
  1.4937 +2008-02-29  Wermer Lemberg  <wl@gnu.org>
  1.4938 +
  1.4939 +	* docs/CHANGES: Updated.
  1.4940 +
  1.4941 +2008-02-29  Wolf
  1.4942 +
  1.4943 +	Add build support for symbian platform.  From Savannah bug #22440.
  1.4944 +
  1.4945 +	* builds/symbian/*: New files.
  1.4946 +
  1.4947 +2008-02-21  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4948 +
  1.4949 +	* src/base/ftmac.c (parse_fond): Fix a bug of PostScript font name
  1.4950 +	synthesis.  For any face of a specified FOND, always the name for
  1.4951 +	the first face was used.  Except of a FOND that refers multiple
  1.4952 +	Type1 font files, wrong synthesized font names are not used at all,
  1.4953 +	so this is an invisible bug.  A few limit checks are added too.
  1.4954 +
  1.4955 +	* builds/mac/ftmac.c: Ditto.
  1.4956 +
  1.4957 +2008-02-21  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4958 +
  1.4959 +	* builds/unix/configure.raw: Split compiler option to link Carbon
  1.4960 +	frameworks to one option for CoreServices framework and another
  1.4961 +	option for ApplicationServices framework.  The split options can be
  1.4962 +	managed by GNU libtool to avoid unrequired duplication when FreeType
  1.4963 +	is linked with other applications.  Suggested by Daniel Macks,
  1.4964 +	Savannah bug #22366.
  1.4965 +
  1.4966 +2008-02-18  Victor Stinner  <victor.stinner@haypocalc.com>
  1.4967 +
  1.4968 +	* src/truetype/ttinterp.c (Ins_IUP): Check number of points.  Fix
  1.4969 +	from Savannah bug #22356.
  1.4970 +
  1.4971 +2008-02-17  Jonathan Blow  <jon@number-none.com>
  1.4972 +
  1.4973 +	* src/autofit/afloader.c (af_loader_load_g, af_loader_load_glyph):
  1.4974 +	Check for valid callback pointers.
  1.4975 +
  1.4976 +2008-02-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4977 +
  1.4978 +	* src/base/ftmac.c (FT_New_Face_From_SFNT): Check the sfnt resource
  1.4979 +	handle by its value instead of ResError(), fix provided by Deron
  1.4980 +	Kazmaier.  According to the Resource Manager Reference,
  1.4981 +	GetResource(), Get1Resource(), GetNamedResource(),
  1.4982 +	Get1NamedResource() and RGetResource() set noErr but return NULL
  1.4983 +	handle when they can not find the requested resource.  These
  1.4984 +	functions never return undefined values, so it is sufficient to
  1.4985 +	check if the handle is not NULL.
  1.4986 +
  1.4987 +	* builds/mac/ftmac.c (FT_New_Face_From_SFNT): Ditto.
  1.4988 +
  1.4989 +2008-02-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.4990 +
  1.4991 +	* src/base/ftbase.c: <ftmac.c> is replaced by "ftmac.c" as other
  1.4992 +	inclusion styles.  Now it always includes src/base/ftmac.c;
  1.4993 +	builds/mac/ftmac.c is never included in any configuration.
  1.4994 +
  1.4995 +	* builds/unix/configure.raw: Print warning if configure is executed
  1.4996 +	with options to specify Carbon functionalities explicitly.
  1.4997 +
  1.4998 +	* docs/INSTALL.MAC: Note that legacy builds/mac/ftmac.c is not
  1.4999 +	included automatically and manual replacement is required.
  1.5000 +
  1.5001 +2008-02-11  Werner Lemberg  <wl@gnu.org>
  1.5002 +
  1.5003 +	* builds/modules.mk (CLOSE_MODULE, REMOVE_MODULE), builds/detect.mk
  1.5004 +	(dos_setup), builds/freetype.mk (clean_project_dos,
  1.5005 +	distclean_project_dos): Don't use \ but $(SEP).  Reported by Duncan
  1.5006 +	Murdoch.
  1.5007 +
  1.5008 +2008-01-18  Sylvain Pasche  <sylvain.pasche@gmail.com>
  1.5009 +
  1.5010 +	* src/base/ftlcdfil.c (_ft_lcd_filter_legacy): Updated comment to
  1.5011 +	mention intra-pixel algorithm.
  1.5012 +
  1.5013 +	* include/freetype/freetype.h (FT_Render_Mode): Mention that
  1.5014 +	FT_Library_SetLcdFilter can be used to reduce fringes.
  1.5015 +
  1.5016 +2008-01-16  Werner Lemberg  <wl@gnu.org>
  1.5017 +
  1.5018 +	* src/raster/ftraster.c (ft_black_render): Check `outline' before
  1.5019 +	using it.  Reported by Allan Yang.
  1.5020 +
  1.5021 +2008-01-12  Werner Lemberg  <wl@gnu.org>
  1.5022 +
  1.5023 +	* src/raster/ftraster.c (FT_CONFIG_OPTION_5_GRAY_LEVELS): Remove.
  1.5024 +
  1.5025 +2008-01-12  Allan Yang, Jian Hua - SH  <Allan.Yang@fmc.fujitsu.com>
  1.5026 +
  1.5027 +	* src/raster/ftraster.c (ft_black_init)
  1.5028 +	[FT_RASTER_OPTION_ANTI_ALIASING]: Fix compilation.
  1.5029 +
  1.5030 +2008-01-10  Werner Lemberg  <wl@gnu.org>
  1.5031 +
  1.5032 +	* src/truetype/ttgload.c (load_truetype_glyph): Handle the case
  1.5033 +	where the number of contours in a simple glyph is zero (and which
  1.5034 +	does contain an entry in the `glyf' table).  This fixes Savannah bug
  1.5035 +	#21990.
  1.5036 +
  1.5037 +2008-01-04  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.5038 +
  1.5039 +	Formatting suggested by Sean McBride.
  1.5040 +
  1.5041 +	* builds/mac/ftmac.c: Formatting (tab expanded).
  1.5042 +	* src/autofit/afindic.c: Ditto.
  1.5043 +	* src/base/ftcid.c: Ditto.
  1.5044 +	* src/base/ftmac.c: Ditto.
  1.5045 +
  1.5046 +2007-12-30  Werner Lemberg  <wl@gnu.org>
  1.5047 +
  1.5048 +	* src/smooth/ftgrays.c (gray_raster_render): Check `outline'
  1.5049 +	correctly.
  1.5050 +
  1.5051 +2007-12-21  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.5052 +
  1.5053 +	Improvement of POSIX resource-fork accessor to load unsorted
  1.5054 +	references in a resource.  In HelveLTMM (resource-fork PostScript
  1.5055 +	Type1 font bundled with Mac OS X since 10.3.x), the appearance order
  1.5056 +	of PFB chunks is not sorted; sorting the chunks by reference IDs is
  1.5057 +	required.
  1.5058 +
  1.5059 +	* include/freetype/internal/ftrfork.h (FT_RFork_Ref): New structure
  1.5060 +	type to store a pair of reference ID and offset to the chunk.
  1.5061 +
  1.5062 +	* src/base/ftrfork.c (ft_raccess_sort_ref_by_id): New function to
  1.5063 +	sort FT_RFork_Ref by their reference IDs.
  1.5064 +
  1.5065 +	(FT_Raccess_Get_DataOffsets): Returns an array of offsets that is
  1.5066 +	sorted by reference ID.
  1.5067 +
  1.5068 +2007-12-14  Werner Lemberg  <wl@gnu.org>
  1.5069 +
  1.5070 +	* src/cff/cffparse.c (cff_parse_real): Don't apply `power_ten'
  1.5071 +	division too early; otherwise the most significant digit(s) of the
  1.5072 +	final result are lost as the value is truncated to an integer.  This
  1.5073 +	fixes Savannah bug #21794 (where the patch has been posted too).
  1.5074 +
  1.5075 +2007-12-06  Fix  <4d876b82@gmail.com>
  1.5076 +
  1.5077 +	Pass options from one configure script to another as-is (not
  1.5078 +	expanded).  This is needed for options like
  1.5079 +	--includedir='${prefix}/include'.
  1.5080 +
  1.5081 +	* builds/unix/detect.mk, configure: Prevent argument expansion in
  1.5082 +	call to the (real) `configure' script.
  1.5083 +
  1.5084 +2007-12-06  Werner Lemberg  <wl@gnu.org>
  1.5085 +
  1.5086 +	* src/truetype/ttgload.c (load_truetype_glyph): Fix compilation if
  1.5087 +	TT_USE_BYTECODE_INTERPRETER isn't defined.
  1.5088 +
  1.5089 +2007-12-06  Werner Lemberg  <wl@gnu.org>
  1.5090 +
  1.5091 +	There exist CFFs which contain opcodes for the Type 1 operators
  1.5092 +	`hsbw' and `closepath' which are both invalid in Type 2 charstrings.
  1.5093 +	However, it doesn't harm to support them.
  1.5094 +
  1.5095 +	* src/cff/cffgload.c (CFF_Operator): Add `cff_op_hsbw' and
  1.5096 +	`cff_op_closepath.'
  1.5097 +	(cff_argument_counts): Ditto.
  1.5098 +
  1.5099 +	(cff_decoder_parse_charstrings): Handle Type 1 opcodes 9 (closepath)
  1.5100 +	and 13 (hsbw) which are invalid in Type 2 charstrings.
  1.5101 +
  1.5102 +2007-12-06  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.5103 +
  1.5104 +	* src/base/ftrfork.c (raccess_guess_darwin_newvfs): New function to
  1.5105 +	support new pathname syntax `..namedfork/rsrc' to access a resource
  1.5106 +	fork on Mac OS X.  The legacy syntax `/rsrc' does not work on
  1.5107 +	case-sensitive HFS+.
  1.5108 +	(raccess_guess_darwin_hfsplus): Fix a bug in the calculation of
  1.5109 +	buffer size to store a pathname.
  1.5110 +	* include/freetype/internal/ftrfork.h: Increment the number of
  1.5111 +	resource fork guessing rule.
  1.5112 +
  1.5113 +2007-12-06  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.5114 +
  1.5115 +	* builds/unix/configure.raw: Improve the compile tests to search
  1.5116 +	Carbon functions.
  1.5117 +	* builds/mac/ftmac.c: Import fixes for Carbon incompatibilities
  1.5118 +	proposed by Sean McBride from src/base/ftmac.c (see 2007-11-16).
  1.5119 +
  1.5120 +2007-12-06  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.5121 +
  1.5122 +	The documents and comments for Mac OS X are improved by Sean
  1.5123 +	McBride.
  1.5124 +
  1.5125 +	* src/base/ftmac.c: Fix a comment.
  1.5126 +	* include/freetype/ftmac.h: Ditto.
  1.5127 +	* docs/INSTALL.MAC: Improve English and add comment on lowest
  1.5128 +	system version specified by MACOSX_DEPLOYMENT_TARGET.
  1.5129 +
  1.5130 +2007-12-04  Werner Lemberg  <wl@gnu.org>
  1.5131 +
  1.5132 +	* src/cff/cffload.c (cff_subfont_load): Don't use logical OR to
  1.5133 +	concatenate error codes.
  1.5134 +	* src/sfnt/ttsbit.c (Load_SBit_Range): Ditto.
  1.5135 +
  1.5136 +2007-12-04  Graham Asher  <graham.asher@btinternet.com>
  1.5137 +
  1.5138 +	* src/truetype/ttobjs.c (tt_face_init): Don't use logical OR to
  1.5139 +	concatenate error codes.
  1.5140 +
  1.5141 +2007-12-04  Sean McBride  <sean@rogue-research.com>
  1.5142 +
  1.5143 +	* src/pfr/pfrgload.c (pfr_glyph_load_compound): Remove compiler
  1.5144 +	warning.
  1.5145 +
  1.5146 +2007-11-20  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.5147 +
  1.5148 +	Fix MacOS legacy font support by Masatake Yamato on Mac OS X.  It is
  1.5149 +	not working since 2.3.5.  In FT_Open_New(), if FT_New_Stream()
  1.5150 +	cannot mmap() the specified file and cannot seek to head of the
  1.5151 +	specified file, it returns NULL stream and FT_Open_New() returns the
  1.5152 +	error immediately.  On MacOS, most legacy MacOS fonts fall into such
  1.5153 +	a scenario because their data forks are zero-sized and cannot be
  1.5154 +	sought.  To proceed to guessing of resource fork fonts, the
  1.5155 +	functions for legacy MacOS font must properly handle the NULL stream
  1.5156 +	returned by FT_New_Stream().
  1.5157 +
  1.5158 +	* src/base/ftobjs.c (IsMacBinary): Return error
  1.5159 +	FT_Err_Invalid_Stream_Operation immediately when NULL stream is
  1.5160 +	passed.
  1.5161 +	(FT_Open_Face): Even when FT_New_Stream() returns an error, proceed
  1.5162 +	to fallback.  Originally, legacy MacOS font is tested in the cases
  1.5163 +	of FT_Err_Invalid_Stream_Operation (occurs when data fork is empty)
  1.5164 +	or FT_Err_Unknown_File_Format (occurs when AppleSingle header or
  1.5165 +	.dfont header is combined).  Now the case of
  1.5166 +	FT_Err_Cannot_Open_Stream is included.
  1.5167 +
  1.5168 +	* src/base/ftrfork.c (FT_Raccess_Guess): When passed stream is NULL,
  1.5169 +	skip FT_Stream_Seek(), which seeks to the head of stream, and
  1.5170 +	proceed to unit testing of raccess_guess_XXX().  FT_Stream_Seek()
  1.5171 +	for a NULL stream causes a Bus error on Mac OS X.
  1.5172 +	(raccess_guess_apple_double): Return FT_Err_Cannot_Open_Stream
  1.5173 +	immediately if passed stream is NULL.
  1.5174 +	(raccess_guess_apple_single): Ditto.
  1.5175 +
  1.5176 +2007-11-16  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.5177 +
  1.5178 +	Fix for Carbon incompatibilities since Mac OS X 10.5,
  1.5179 +	proposed by Sean McBride.
  1.5180 +
  1.5181 +	* doc/INSTALL.MAC: Comment on MACOSX_DEPLOYMENT_TARGET.
  1.5182 +
  1.5183 +	* include/freetype/ftmac.h: Deprecate FT_New_Face_From_FOND and
  1.5184 +	FT_GetFilePath_From_Mac_ATS_Name.  Since Mac OS X 10.5, calling
  1.5185 +	Carbon functions from a forked process is classified as unsafe
  1.5186 +	by Apple.  All Carbon-dependent functions should be deprecated.
  1.5187 +
  1.5188 +	* src/base/ftmac.c: Use essential header files
  1.5189 +	<CoreServices/CoreServices.h> and
  1.5190 +	<ApplicationServices/ApplicationServices.h> instead of
  1.5191 +	all-in-one header file <Carbon/Carbon.h>.
  1.5192 +
  1.5193 +	Include <sys/syslimits.h> and replace HFS_MAXPATHLEN by Apple
  1.5194 +	genuine macro PATH_MAX.
  1.5195 +
  1.5196 +	Add fallback macro for kATSOptionFlagsUnRestrictedScope which
  1.5197 +	is not found in Mac OS X 10.0.
  1.5198 +
  1.5199 +	Multi-character constants ('POST', 'sfnt' etc) are replaced by
  1.5200 +	64bit constants calculated by FT_MAKE_TAG() macro.
  1.5201 +
  1.5202 +	For the index in the segment of resource fork, new portable
  1.5203 +	type ResourceIndex is introduced for better compatibility.
  1.5204 +	This type is since Mac OS X 10.5, so it is defined as short
  1.5205 +	when built on older platforms.
  1.5206 +
  1.5207 +	(FT_ATSFontGetFileReference): If build target is only the systems
  1.5208 +	10.5 and newer, it calls Apple genuine ATSFontGetFileReference().
  1.5209 +
  1.5210 +	(FT_GetFile_From_Mac_ATS_Name): Return an error if system is 10.5
  1.5211 +	and newer or 64bit platform, because legacy type FSSpec type is
  1.5212 +	removed completely.
  1.5213 +
  1.5214 +	(FT_New_Face_From_FSSpec): Ditto.
  1.5215 +
  1.5216 +2007-11-01  Werner Lemberg  <wl@gnu.org>
  1.5217 +
  1.5218 +	* src/sfnt/sfobjs.c (sfnt_done_face): Check `sfnt' everywhere.  This
  1.5219 +	fixes Savannah bug #21485.
  1.5220 +
  1.5221 +2007-10-29  Daniel Svoboda  <dasvo@planeta@cz>
  1.5222 +
  1.5223 +	* src/winfonts/winfnt.c (FNT_Face_Init): Check first that the driver
  1.5224 +	can handle the font at all, then check `face_index'.  Otherwise, the
  1.5225 +	driver might return the wrong error code.  This fixes Savannah bug
  1.5226 +	#21468.
  1.5227 +
  1.5228 +2007-10-21  Werner Lemberg  <wl@gnu.org>
  1.5229 +
  1.5230 +	* src/sfnt/sfobjs.c (sfnt_load_face): Support bit 9 and prepare
  1.5231 +	support for bit 8 of the `fsSelection' field in the `OS/2' table.
  1.5232 +	MS is already using this; hopefully, this becomes part of OpenType
  1.5233 +	1.5.
  1.5234 +	Prepare also support for `name' IDs 21 (WWS_FAMILY) and 22
  1.5235 +	(WWS_SUBFAMILY).
  1.5236 +
  1.5237 +2007-10-20  Werner Lemberg  <wl@gnu.org>
  1.5238 +
  1.5239 +	* src/tools/docmaker/tohtml.py (html_header_2): Fix typo.
  1.5240 +	Add `td.left' element to CSS.
  1.5241 +	(toc_section_enter): Use it.
  1.5242 +
  1.5243 +2007-10-18  David Turner  <david@freetype.org>
  1.5244 +
  1.5245 +	* include/freetype/freetype.h, src/base/ftobjs.c: Rename API
  1.5246 +	functions related to cmap type 14 support to the
  1.5247 +	`FT_Object_ActionName' scheme:
  1.5248 +
  1.5249 +	  FT_Get_Char_Variant_index     -> FT_Face_GetCharVariantIndex
  1.5250 +	  FT_Get_Char_Variant_IsDefault -> FT_Face_GetCharVariantIsDefault
  1.5251 +	  FT_Get_Variant_Selectors      -> FT_Face_GetVariantSelectors
  1.5252 +	  FT_Get_Variants_Of_Char       -> FT_Face_GetVariantsOfChar
  1.5253 +	  FT_Get_Chars_Of_Variant       -> FT_Face_GetCharsOfVariant
  1.5254 +
  1.5255 +	Update documentation accordingly.
  1.5256 +
  1.5257 +	* src/sfnt/ttcmap.c: Stronger cmap 14 validation.
  1.5258 +	Make the code a little more consistent with FreeType coding
  1.5259 +	conventions and modify the cmap14 functions that returned a newly
  1.5260 +	allocated array to use a persistent vector from the TT_CMap14 object
  1.5261 +	instead.
  1.5262 +
  1.5263 +	(TT_CMap14Rec): Provide array and auxiliary data for result.
  1.5264 +	(tt_cmap14_done, tt_cmap14_ensure): New functions.
  1.5265 +
  1.5266 +	(tt_cmap14_init, tt_cmap14_validate, tt_cmap14_char_map_def_binary,
  1.5267 +	tt_cmap14_char_map_nondef_binary, tt_cmap14_find_variant,
  1.5268 +	tt_cmap14_char_var_index, tt_cmap14_variants,
  1.5269 +	tt_cmap14_char_variants, tt_cmap14_def_char_count,
  1.5270 +	tt_cmap14_get_def_chars, tt_cmap14_get_nondef_chars,
  1.5271 +	tt_cmap14_variant_chars, tt_cmap14_class_rec): Updated and improved.
  1.5272 +
  1.5273 +2007-10-15  George Williams  <gww@silcom.com>
  1.5274 +
  1.5275 +	Add support for cmap type 14.
  1.5276 +
  1.5277 +	* devel/ftoption.h, include/freetype/config/ftoption.h
  1.5278 +	(TT_CONFIG_CMAP_FORMAT_14): New macro.
  1.5279 +
  1.5280 +	* include/freetype/internal/ftobjs.h (FT_CMap_CharVarIndexFunc,
  1.5281 +	FT_CMap_CharVarIsDefaultFunc, FT_CMap_VariantListFunc,
  1.5282 +	FT_CMap_CharVariantListFunc, FT_CMap_VariantCharListFunc): New
  1.5283 +	support function prototypes.
  1.5284 +	(FT_CMap_ClassRec): Add them.
  1.5285 +	Update all users.
  1.5286 +
  1.5287 +	* include/freetype/ttnameid.h (TT_APPLE_ID_VARIANT_SELECTOR): New
  1.5288 +	macro.
  1.5289 +
  1.5290 +	* include/freetype/freetype.h (FT_Get_Char_Variant_Index,
  1.5291 +	FT_Get_Char_Variant_IsDefault, FT_Get_Variant_Selectors,
  1.5292 +	FT_Get_Variants_Of_Char, FT_Get_Chars_Of_Variant): New API
  1.5293 +	functions.
  1.5294 +
  1.5295 +	* src/base/ftobjs.c (find_variant_selector_charmap): New auxiliary
  1.5296 +	function.
  1.5297 +	(FT_Set_Charmap): Disallow cmaps of type 14.
  1.5298 +	(FT_Get_Char_Variant_Index, FT_Get_Char_Variant_IsDefault,
  1.5299 +	FT_Get_Variant_Selectors, FT_Get_Variants_Of_Char,
  1.5300 +	FT_Get_Chars_Of_Variant): New API functions.
  1.5301 +
  1.5302 +	* src/sfnt/ttcmap.c (TT_PEEK_UINT24, TT_NEXT_UINT24): New macros.
  1.5303 +
  1.5304 +	(TT_CMap14Rec, tt_cmap14_init, tt_cmap14_validate,
  1.5305 +	tt_cmap14_char_index, tt_cmap14_char_next, tt_cmap14_get_info,
  1.5306 +	tt_cmap14_char_map_def_binary, tt_cmap14_char_map_nondef_binary,
  1.5307 +	tt_cmap14_find_variant, tt_cmap14_char_var_index,
  1.5308 +	tt_cmap14_char_var_isdefault, tt_cmap14_variants,
  1.5309 +	tt_cmap14_char_variants, tt_cmap14_def_char_count,
  1.5310 +	tt_cmap14_get_def_chars, tt_cmap14_get_nondef_chars,
  1.5311 +	tt_cmap14_variant_chars, tt_cmap14_class_rec): New functions and
  1.5312 +	structures for cmap 14 support.
  1.5313 +	(tt_cmap_classes): Register tt_cmap14_class_rec.
  1.5314 +	(tt_face_build_cmaps): One more error message.
  1.5315 +
  1.5316 +	* docs/CHANGES: Mention cmap 14 support.
  1.5317 +
  1.5318 +2007-10-01  Werner Lemberg  <wl@gnu.org>
  1.5319 +
  1.5320 +	* src/base/ftobjs.c (find_unicode_charmap): If search for a UCS-4
  1.5321 +	charmap fails, do the loop again while searching a UCS-2 charmap.
  1.5322 +	This favours MS charmaps over Apple ones.
  1.5323 +
  1.5324 +2007-08-29  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.5325 +
  1.5326 +	* src/base/ftmac.c: Introduction of abstract `short' data types,
  1.5327 +	ResFileRefNum and ResID.  These types were introduced for Copland,
  1.5328 +	then backported to MPW.  The variables exchanged with FileManager
  1.5329 +	QuickDraw frameworks are redefined by these data types.  Patch was
  1.5330 +	proposed by Sean McBride.
  1.5331 +	* builds/mac/ftmac.c: Ditto.
  1.5332 +
  1.5333 +2007-08-18  Werner Lemberg  <wl@gnu.org>
  1.5334 +
  1.5335 +	* src/otvalid/otvcmmn.c (otv_x_y_ux_sy): Skip context glyphs.  Found
  1.5336 +	by Imran Yousaf.  Fixes Savannah bug #20773.
  1.5337 +
  1.5338 +	(otv_Lookup_validate): Correct handling of LookupType.  Found by
  1.5339 +	Imran Yousaf.  Fixes Savannah bug #20782.
  1.5340 +
  1.5341 +2007-08-17  George Williams  <gww@silcom.com>
  1.5342 +
  1.5343 +	* src/otvalid/otvgsub.c (otv_SingleSubst_validate): Fix handling of
  1.5344 +	SingleSubstFormat1.
  1.5345 +
  1.5346 +2007-08-11  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.5347 +
  1.5348 +	* builds/unix/configure.raw: Fix a bug which sets CC_BUILD by
  1.5349 +	${build-gcc} (unchecked) instead of by ${build}-gcc (checked).
  1.5350 +	Found by Ryan Hill.
  1.5351 +
  1.5352 +2007-08-11  George Williams  <gww@silcom.com>
  1.5353 +
  1.5354 +	* src/otvalid/otvcommn.c, src/otvalid/otvcommn.h
  1.5355 +	(otv_Coverage_validate): Add fourth argument to pass an expected
  1.5356 +	count value.  Update all users.
  1.5357 +	Check glyph IDs.
  1.5358 +	(otv_ClassDef_validate): Check `StartGlyph'.
  1.5359 +
  1.5360 +	* src/otvalid/otvgsub.c (otv_SingleSubst_validate): More glyph ID
  1.5361 +	checks.
  1.5362 +
  1.5363 +	* src/otvalid/otvmath.c (otv_MathConstants_validate): There are only
  1.5364 +	56 constants.
  1.5365 +	(otv_GlyphAssembly_validate, otv_MathGlyphConstruction_validate):
  1.5366 +	Check glyph IDs.
  1.5367 +
  1.5368 +2007-08-08  Werner Lemberg  <wl@gnu.org>
  1.5369 +
  1.5370 +	* src/otvalid/otvbase.c, src/otvalid/otvcommn.c,
  1.5371 +	src/otvalid/otvgdef.c, src/otvalid/otvgpos.c, src/otvalid/otvgsub.c,
  1.5372 +	src/otvalid/otvjstf.c: s/FT_INVALID_DATA/FT_INVALID_FORMAT/ where
  1.5373 +	appropriate.  Reported by George.
  1.5374 +
  1.5375 +	* include/freetype/internal/fttrace.h: Define `trace_otvmath'.
  1.5376 +
  1.5377 +	* src/otvalid/rules.mk (OTV_DRV_SRC): Add otvmath.c.
  1.5378 +
  1.5379 +	* docs/CHANGES: Updated.
  1.5380 +
  1.5381 +2007-08-08  George Williams  <gww@silcom.com>
  1.5382 +
  1.5383 +	Add `MATH' validating support to otvalid module.
  1.5384 +
  1.5385 +	* include/freetype/tttags.h (TTAG_MATH): New macro.
  1.5386 +	* include/freetype/ftotval.h (FT_VALIDATE_MATH): New macro.
  1.5387 +	(FT_VALIDATE_OT): Updated.
  1.5388 +
  1.5389 +	* src/otvalid/otmath.c: New file.
  1.5390 +
  1.5391 +	* src/otvalid/otvalid.c: Include otvmath.c.
  1.5392 +	* src/otvalid/otvmod.c (otv_validate): Handle `MATH' table.
  1.5393 +
  1.5394 +2007-08-04  Werner Lemberg  <wl@gnu.org>
  1.5395 +
  1.5396 +	* builds/unix/configure.raw: Add call to AC_LIBTOOL_WIN32_DLL.
  1.5397 +	Fixes Savannah bug #20686.
  1.5398 +
  1.5399 +2007-08-03  Werner Lemberg  <wl@gnu.org>
  1.5400 +
  1.5401 +	* src/psnames/psmodule.c: Fix usage of
  1.5402 +	FT_CONFIG_OPTION_POSTSCRIPT_NAMES macro.  Reported by Graham Asher.
  1.5403 +
  1.5404 +2007-07-31  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.5405 +
  1.5406 +	* src/base/ftmac.c (open_face_from_buffer): The argument
  1.5407 +	`driver_name' is typed as `const char*' to match with the
  1.5408 +	callers in FT_New_Face_From_LWFN and FT_New_Face_From_SFNT.
  1.5409 +	This is same with open_face_from_buffer in src/base/ftobjs.c.
  1.5410 +	Found and fixed by Sean McBride.
  1.5411 +
  1.5412 +2007-07-28  Werner Lemberg  <wl@gnu.org>
  1.5413 +
  1.5414 +	* src/raster/ftraster.c (count_table): Make it conditional.
  1.5415 +	* src/base/ftobjs.c (FT_New_Library): Check FT_RENDER_POOL_SIZE with
  1.5416 +	a preprocessor statement.
  1.5417 +
  1.5418 +2007-07-27  Werner Lemberg  <wl@gnu.org>
  1.5419 +
  1.5420 +	* src/base/ftoutln.c (FT_Outline_Translate): Check `outline' before
  1.5421 +	first usage.  From Savannah patch #6115.
  1.5422 +
  1.5423 +2007-07-16  Werner Lemberg  <wl@gnu.org>
  1.5424 +
  1.5425 +	* docs/CHANGES: Updated.
  1.5426 +
  1.5427 +2007-07-16  Derek Clegg  <dclegg@apple.com>
  1.5428 +
  1.5429 +	Add new service for getting the ROS from a CID font.
  1.5430 +
  1.5431 +	* include/freetype/config/ftheader.h (FT_CID_H): New macro.
  1.5432 +	* include/freetype/ftcid.h: New file.
  1.5433 +
  1.5434 +	* include/freetype/internal/ftserv.h (FT_SERVIVE_CID_H): New macro.
  1.5435 +	* include/freetype/internal/services/svcid.h: New file.
  1.5436 +
  1.5437 +	* src/base/ftcid.c: New file.
  1.5438 +
  1.5439 +	* src/cff/cffdrivr.c: Include FT_SERVICE_CID_H.
  1.5440 +	(cff_get_ros): New function.
  1.5441 +	(cff_service_cid_info): New service structure.
  1.5442 +	(cff_services): Register it.
  1.5443 +
  1.5444 +	* src/cff/cffload.c (cff_font_done): Free registry and ordering.
  1.5445 +
  1.5446 +	* src/cff/cfftypes.h (CFF_FontRec): Add `registry' and `ordering'.
  1.5447 +
  1.5448 +	* modules.cfg (BASE_EXTENSIONS): Add ftcid.c.
  1.5449 +
  1.5450 +2007-07-11  Derek Clegg  <dclegg@apple.com>
  1.5451 +
  1.5452 +	Add support for postscript name service to CFF driver.
  1.5453 +
  1.5454 +	* src/cff/cffdrivr.c: Include FT_SERVICE_POSTSCRIPT_NAME_H.
  1.5455 +	(cff_get_ps_name): New function.
  1.5456 +	(cff_service_ps_name): New service structure.
  1.5457 +	(cff_services): Register it.
  1.5458 +
  1.5459 +2007-07-07  Werner Lemberg  <wl@gnu.org>
  1.5460 +
  1.5461 +	* src/base/ftglyph.c (FT_Glyph_Copy): Fix initialization of
  1.5462 +	`target'.  Reported by Sean McBride.
  1.5463 +
  1.5464 +2007-07-06  Werner Lemberg  <wl@gnu.org>
  1.5465 +
  1.5466 +	* src/pfr/pfrcmap.c: Include pfrerror.h.
  1.5467 +
  1.5468 +	* src/autofit/afindic.c: Add some external declarations to pacify
  1.5469 +	`make multi' compilation.
  1.5470 +
  1.5471 +	* src/cid/cidgload.c (cid_load_glyph): Pacify compiler.
  1.5472 +
  1.5473 +	* src/cff/cffdrivr.c (cff_ps_get_font_info), src/cff/cffobjs.c
  1.5474 +	(cff_strcpy), include/freetype/internal/ftmemory.h (FT_MEM_STRDUP),
  1.5475 +	src/autofit/aflatin.c (af_latin_hints_compute_edges),
  1.5476 +	src/autofit/afcjk.c (af_cjk_hints_compute_edges), src/sfnt/ttmtx.c
  1.5477 +	(tt_face_get_metrics), src/base/ftobjs.c (open_face)
  1.5478 +	[FT_CONFIG_OPTION_INCREMENTAL]: Fix compilation with C++ compiler.
  1.5479 +
  1.5480 +	* docs/release: Mention test compilation targets.
  1.5481 +
  1.5482 +2007-07-04  Werner Lemberg  <wl@gnu.org>
  1.5483 +
  1.5484 +	* docs/PROBLEMS: Mention that some PS based fonts can't be
  1.5485 +	handled correctly by FreeType.
  1.5486 +
  1.5487 +	* src/truetype/ttgload.c (load_truetype_glyph): Always allow a
  1.5488 +	recursion depth of 1.  This was the maximum value in TrueType 1.0,
  1.5489 +	and some older fonts don't set this field correctly.
  1.5490 +
  1.5491 +	* src/gxvalid/gxvmort1.c
  1.5492 +	(gxv_mort_subtable_type1_substTable_validate): Fix tracing message.
  1.5493 +
  1.5494 +2007-07-03  Werner Lemberg  <wl@gnu.org>
  1.5495 +
  1.5496 +	* src/autofit/aflatin.c (af_latin_metrics_init_blues): Initialize
  1.5497 +	`round' to pacify compiler.
  1.5498 +
  1.5499 +2007-07-02  Werner Lemberg  <wl@gnu.org>
  1.5500 +
  1.5501 +
  1.5502 +	* Version 2.3.5 released.
  1.5503 +	=========================
  1.5504 +
  1.5505 +
  1.5506 +	Tag sources with `VER-2-3-5'.
  1.5507 +
  1.5508 +	* docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
  1.5509 +	version number to 2.3.5.
  1.5510 +
  1.5511 +	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
  1.5512 +	builds/win32/visualc/freetype.dsp,
  1.5513 +	builds/win32/visualc/freetype.vcproj,
  1.5514 +	builds/win32/visualce/index.html,
  1.5515 +	builds/win32/visualce/freetype.dsp,
  1.5516 +	builds/win32/visualce/freetype.vcproj: s/2.3.4/2.3.5/, s/234/235/.
  1.5517 +
  1.5518 +	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 5.
  1.5519 +
  1.5520 +	* builds/unix/configure.raw (version_info): Set to 9:16:3.
  1.5521 +
  1.5522 +2007-07-01  David Turner  <david@freetype.org>
  1.5523 +
  1.5524 +	* include/freetype/freetype.h, src/base/ftpatent.c
  1.5525 +	(FT_Face_SetUnpatentedHinting): New function to dynamically change
  1.5526 +	the setting after a face is created.
  1.5527 +
  1.5528 +	* src/truetype/ttgload.c (TT_Load_Simple_Glyph): Fix a small bug
  1.5529 +	that created distortions in the bytecode interpreter results.
  1.5530 +
  1.5531 +2007-06-30  David Turner  <david@freetype.org>
  1.5532 +
  1.5533 +	* src/truetype/ttinterp.c (Ins_IUP): Add missing variable
  1.5534 +	initialization.
  1.5535 +
  1.5536 +	* src/autofit/aflatin.c (af_latin_metric_init_blues): Get rid of an
  1.5537 +	infinite loop in the case of degenerate fonts.
  1.5538 +
  1.5539 +2007-06-26  Rahul Bhalerao  <b.rahul.pm@gmail.com>
  1.5540 +
  1.5541 +	Add autofit module for Indic scripts.  This currently just reuses
  1.5542 +	the CJK-specific functions.
  1.5543 +
  1.5544 +	* include/freetype/config/ftoption.h (AF_CONFIG_OPTION_INDIC): New
  1.5545 +	macro.
  1.5546 +	* devel/ftoption.h: Synchronize with
  1.5547 +	include/freetype/config/ftoption.h.
  1.5548 +
  1.5549 +	* src/autofit/afindic.c, src/autofit/afindic.h: New files.
  1.5550 +
  1.5551 +	* src/autofit/afglobal.c, src/autofit/aftypes.h,
  1.5552 +	src/autofit/autofit.c: Updated.
  1.5553 +
  1.5554 +	* src/autofit/Jamfile (_sources), * src/autofit/rules.mk
  1.5555 +	(AUTOF_DRV_SRC): Updated.
  1.5556 +
  1.5557 +2007-06-23  David Turner  <david@freetype.org>
  1.5558 +
  1.5559 +	* src/truetype/ttgload.c (TT_Load_Simple): Fix change from
  1.5560 +	2007-06-16 that prevented the TrueType module from loading most
  1.5561 +	glyphs.
  1.5562 +
  1.5563 +2007-06-20  Werner Lemberg  <wl@gnu.org>
  1.5564 +
  1.5565 +	* src/cff/cffgload.c (cff_slot_load): Fix logic of 2007-05-28
  1.5566 +	change.
  1.5567 +
  1.5568 +2007-06-19  Werner Lemberg  <wl@gnu.org>
  1.5569 +
  1.5570 +	* src/type1/t1load.c (parse_encoding): Handle one more error.
  1.5571 +
  1.5572 +2007-06-19  Dmitry Timoshkov  <dmitry@codeweavers.com>
  1.5573 +
  1.5574 +	* src/winfonts/winfnt.c (fnt_face_get_dll_font): Return error
  1.5575 +	FNT_Err_Invalid_File_Format if file format was recognized but
  1.5576 +	the file doesn't contain any FNT(NE) or RT_FONT(PE) resources.
  1.5577 +	Add verbose debug logs to make it easier to debug failing load
  1.5578 +	attempts.
  1.5579 +	(FNT_Face_Init): A single FNT font can't contain more than 1 face,
  1.5580 +	so return an error if requested face index is > 0.
  1.5581 +	Do not do further attempt to load fonts if a previous attempt has
  1.5582 +	failed but returned error FNT_Err_Invalid_File_Format, i.e., the
  1.5583 +	file format has been recognized but no fonts found in the file.
  1.5584 +
  1.5585 +2007-07-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.5586 +
  1.5587 +	* src/base/ftmac.c: Apply patches proposed by Sean McBride.
  1.5588 +	(FT_GetFile_From_Mac_Name): Insert FT_UNUSED macros to fix
  1.5589 +	the compiler warnings against unused arguments.
  1.5590 +	(FT_ATSFontGetFileReference): Ditto.
  1.5591 +	(FT_GetFile_From_Mac_ATS_Name): Ditto.
  1.5592 +	(FT_New_Face_From_FSSpec): Ditto.
  1.5593 +	(lookup_lwfn_by_fond): Fix wrong comment.
  1.5594 +	Replace `const StringPtr' by more appropriate type
  1.5595 +	`ConstStr255Param'.
  1.5596 +	FSRefMakePathPath always returns UTF8 POSIX pathname in
  1.5597 +	Mach-O, thus HFS pathname support is dropped.
  1.5598 +	(count_faces): Remove HLock and HUnlock which is not
  1.5599 +	required on Mac OS X anymore.
  1.5600 +	(FT_New_Face_From_SFNT): Ditto.
  1.5601 +	(FT_New_Face_From_FOND): Ditto.
  1.5602 +	* builds/mac/ftmac.c: Synchronize to src/base/ftmac.c,
  1.5603 +	except of HFS pathname support and HLock/HUnlock.
  1.5604 +	They are required on classic CFM environment.
  1.5605 +
  1.5606 +2007-06-18  Werner Lemberg  <wl@gnu.org>
  1.5607 +
  1.5608 +	* src/psaux/psobjs.c (ps_parser_skip_PS_token): Remove incorrect
  1.5609 +	assertion.
  1.5610 +	(ps_parser_to_bytes): Fix error message.
  1.5611 +
  1.5612 +	* src/type42/t42objs.c (T42_Open_Face): Handle one more error.
  1.5613 +	* src/type42/t42parse.c (t42_parse_sfnts): s/alloc/allocated/.
  1.5614 +	Don't allow mixed binary and hex strings.
  1.5615 +	Handle string_size == 0 and string_buf == 0.
  1.5616 +	(t42_parse_encoding): Handle one more error.
  1.5617 +
  1.5618 +2007-06-18  Werner Lemberg  <wl@gnu.org>
  1.5619 +
  1.5620 +	* src/psaux/psobjs.c (ps_tofixedarray, ps_tocoordarray): Fix exit
  1.5621 +	logic.
  1.5622 +	(ps_parser_load_field) <T1_FIELD_TYPE_BBOX>: Skip delimiters
  1.5623 +	correctly.
  1.5624 +	(ps_parser_load_field_table): Use `fields->array_max' instead of
  1.5625 +	T1_MAX_TABLE_ELEMENTS to limit the number of arguments.
  1.5626 +
  1.5627 +	* src/cff/cffgload.c (cff_decoder_prepare): Fix change from
  1.5628 +	2007-06-06.
  1.5629 +
  1.5630 +2007-06-17  Werner Lemberg  <wl@gnu.org>
  1.5631 +
  1.5632 +	* src/tools/ftrandom.c (font_size): New global variable.
  1.5633 +	(TestFace): Use it.
  1.5634 +	(main): Handle new option `--size' to set `font_size'.
  1.5635 +	(Usage): Updated.
  1.5636 +
  1.5637 +	* src/winfonts/winfnt.c (fnt_face_get_dll_font): Exit in case of
  1.5638 +	invalid font.
  1.5639 +	(FNT_Load_Glyph): Protect against invalid bitmap width.
  1.5640 +
  1.5641 +2007-06-16  David Turner  <david@freetype.org>
  1.5642 +
  1.5643 +	* src/smooth/ftgrays.c (gray_find_cell, gray_set_cell, gray_hline):
  1.5644 +	Prevent integer overflows when rendering very large outlines.
  1.5645 +
  1.5646 +	* src/truetype/ttgload.c (TT_Load_Simple_Glyph): Check the
  1.5647 +	well-formedness of the contours array when loading a glyph.
  1.5648 +
  1.5649 +	* src/truetype/ttinterp.c (TT_Load_Context): Initialize `zp0', `zp1',
  1.5650 +	and `zp2'.
  1.5651 +	(Ins_IP): Check argument ranges to reject bogus operations properly.
  1.5652 +	(IUP_WorkerRec): Add `max_points' member.
  1.5653 +	(_iup_worker_interpolate): Check argument ranges.
  1.5654 +	(Ins_IUP): Ignore empty outlines.
  1.5655 +
  1.5656 +2007-06-16  Dmitry Timoshkov  <dmitry@codeweavers.com>
  1.5657 +
  1.5658 +	* src/winfonts/winfnt.h: Add necessary structures for PE resource
  1.5659 +	parsing.
  1.5660 +	(WinPE32_HeaderRec): New structure.
  1.5661 +	(WinPE32_SectionRec): New structure.
  1.5662 +	(WinPE_RsrcDirRec): New structure.
  1.5663 +	(WinPE_RsrcDirEntryRec): New structure.
  1.5664 +	(WinPE_RsrcDataEntryRec): New structure.
  1.5665 +	(FNT_FontRec): Remove unused `size_shift' field.
  1.5666 +
  1.5667 +	* src/winfonts/winfnt.c (fnt_face_get_dll_font): Add support for
  1.5668 +	loading bitmap .fon files in PE format.
  1.5669 +
  1.5670 +2007-06-15  Dmitry Timoshkov  <dmitry@codeweavers.com>
  1.5671 +
  1.5672 +	* builds/win32/ftdebug.c: Unify debug level handling with other
  1.5673 +	platforms.
  1.5674 +
  1.5675 +2007-06-14  Dmitry Timoshkov  <dmitry@codeweavers.com>
  1.5676 +
  1.5677 +	* builds/win32/ftdebug.c (FT_Message): Send debug output to the
  1.5678 +	console as well as to the debugger.
  1.5679 +
  1.5680 +2007-06-14  Werner Lemberg  <wl@gnu.org>
  1.5681 +
  1.5682 +	* src/autofit/aflatin.c (af_latin_uniranges): Expand structure to
  1.5683 +	cover all ranges which could possibly be handled by the aflatin
  1.5684 +	module (since the default fallback for unknown ranges is now the
  1.5685 +	afcjk module).  It might be necessary to fine-tune this further by
  1.5686 +	splitting off modules for Greek, Cyrillic, or other blocks.
  1.5687 +
  1.5688 +2007-06-11  David Turner  <david@freetype.org>
  1.5689 +
  1.5690 +	* src/autofit/aflatin.c (af_latin_hints_link_segments): Fix
  1.5691 +	incorrect segment linking computation.  This was the root cause of
  1.5692 +	Savannah bug #19565.
  1.5693 +
  1.5694 +
  1.5695 +	* src/autofit/* [FT_OPTION_AUTOFIT2]: Some very experimental changes
  1.5696 +	to improve the Latin auto-hinter.  Note that the new code is
  1.5697 +	disabled by default since it is not stabilized yet.
  1.5698 +
  1.5699 +	* src/autofit/aflatin2.c, src/autofit/aflatin2.h: New files
  1.5700 +	(disabled currently).
  1.5701 +
  1.5702 +	* src/autofit/afhints.c: Remove dead code.
  1.5703 +	(af_axis_hints_new_edge): Add argument to handle segment directions.
  1.5704 +	(af_edge_flags_to_string): New function.
  1.5705 +	(af_glyph_hints_dump_segments, af_glyph_hints_dump_edges): Handle
  1.5706 +	option flags.
  1.5707 +	(af_glyph_hints_reload): Add argument to handle inflections.
  1.5708 +	Simplify.
  1.5709 +	(af_direction_compute): Fine tuning.
  1.5710 +	(af_glyph_hints_align_edge_points): Fix logic.
  1.5711 +	(af_glyph_hints_align_strong_points): Do linear search for small
  1.5712 +	edge counts.
  1.5713 +	(af_glyph_hints_align_weak_points): Skip any touched neighbors.
  1.5714 +	(af_iup_shift): Handle zero `delta'.
  1.5715 +
  1.5716 +	* src/autofit/afhints.h: Updated.
  1.5717 +	(AF_SORT_SEGMENTS): New macro (disabled).
  1.5718 +	(AF_AxisHintsRec) [AF_SORT_SEGMENTS]: New member `mid_segments'.
  1.5719 +
  1.5720 +	* src/autofit/afglobal.c (af_face_globals_get_metrics): Add
  1.5721 +	argument to pass option flags for handling scripts.
  1.5722 +	* src/autofit/afglobal.h: Updated.
  1.5723 +
  1.5724 +	* src/autofit/afcjk.c: Updated.
  1.5725 +	* src/autofit/aflatin.c: Updated.
  1.5726 +	(af_latin_metrics_scale_dim): Don't reduce scale by 2%.
  1.5727 +
  1.5728 +	(af_latin_hints_compute_segments) [AF_HINT_METRICS]: Remove dead code.
  1.5729 +	(af_latin_hints_compute_edges) [AF_HINT_METRICS]: Remove dead code.
  1.5730 +	Don't set `edge->dir'
  1.5731 +	(af_latin_hint_edges): Add more logging.
  1.5732 +
  1.5733 +	* src/autofit/afloader.c: Updated.
  1.5734 +
  1.5735 +2007-06-11  Werner Lemberg  <wl@gnu.org>
  1.5736 +
  1.5737 +	* docs/CHANGES: Document FT_Face_CheckTrueTypePatents.
  1.5738 +
  1.5739 +2007-06-10  David Turner  <david@freetype.org>
  1.5740 +
  1.5741 +	* src/truetype/ttgload.c (TT_Load_Simple_Glyph): Slight speed-up to
  1.5742 +	the TrueType glyph loader.
  1.5743 +
  1.5744 +	* include/freetype/config/ftoption.h: Clarify documentation
  1.5745 +	regarding unpatented hinting.
  1.5746 +
  1.5747 +
  1.5748 +	Add new `FT_Face_CheckTrueTypePatents' API.
  1.5749 +
  1.5750 +	* include/freetype/freetype.h (FT_Face_CheckTrueTypePatents): New
  1.5751 +	declaration.
  1.5752 +
  1.5753 +	* include/freetype/internal/services/svttglyf.h,
  1.5754 +	src/base/ftpatent.c: New files.
  1.5755 +
  1.5756 +	* include/freetype/internal/ftserv.h (FT_SERVICE_TRUETYPE_GLYF_H):
  1.5757 +	New macro.
  1.5758 +
  1.5759 +	* src/truetype/ttdriver.c: Include FT_SERVICE_TRUETYPE_GLYF_H and
  1.5760 +	`ttpload.h'.
  1.5761 +	(tt_service_truetype_glyf): New service structure.
  1.5762 +	(tt_services): Register it.
  1.5763 +
  1.5764 +	* modules.cfg (BASE_EXTENSIONS), src/base/Jamfile (_sources): Add
  1.5765 +	`ftpatent.c'.
  1.5766 +
  1.5767 +2007-06-08  Werner Lemberg  <wl@gnu.org>
  1.5768 +
  1.5769 +	* src/sfnt/sfobjs.c (sfnt_load_face): Undo change from 2007-04-28.
  1.5770 +	Fonts without a cmap must be handled correctly by FreeType (anything
  1.5771 +	else would be a bug).
  1.5772 +
  1.5773 +
  1.5774 +	* src/psaux/t1decode.c (t1_decoder_parse_charstrings)
  1.5775 +	[FT_DEBUG_LEVEL_TRACE]: Improve tracing message.
  1.5776 +
  1.5777 +2007-06-07  Werner Lemberg  <wl@gnu.org>
  1.5778 +
  1.5779 +	* src/sfnt/ttsbit0.c (tt_sbit_decoder_init,
  1.5780 +	tt_sbit_decoder_load_image): Protect against integer overflows.
  1.5781 +
  1.5782 +
  1.5783 +	* src/pfr/pfrgload.c (pfr_glyph_load_simple): More bounding checks
  1.5784 +	for `x_control' and `y_control'.
  1.5785 +
  1.5786 +2007-06-06  Werner Lemberg  <wl@gnu.org>
  1.5787 +
  1.5788 +	* src/base/ftoutln.c (FT_Outline_Decompose): Check `last'.
  1.5789 +
  1.5790 +
  1.5791 +	* src/pfr/pfrcmap.c (pfr_cmap_init): Convert assertion into normal
  1.5792 +	FreeType error.
  1.5793 +
  1.5794 +
  1.5795 +	* src/winfonts/winfnt.c (fnt_face_get_dll_font): Do a rough check of
  1.5796 +	`font_count'.
  1.5797 +
  1.5798 +
  1.5799 +	* src/type1/t1load.c (parse_font_matrix): Check `temp_scale'.
  1.5800 +
  1.5801 +
  1.5802 +	* src/cff/cffgload.c (cff_decoder_prepare): Change return type to
  1.5803 +	`FT_Error'.
  1.5804 +	Check `fd_index'.
  1.5805 +	(cff_slot_load): Updated.
  1.5806 +	* src/cff/cffgload.h: Updated.
  1.5807 +
  1.5808 +2007-06-05  Werner Lemberg  <wl@gnu.org>
  1.5809 +
  1.5810 +	* src/pfr/pfrgload.c (pfr_glyph_done): Comment out unused code.
  1.5811 +	(pfr_glyph_load_simple): Convert assertion into normal FreeType
  1.5812 +	error.
  1.5813 +	Check `idx'.
  1.5814 +	(pfr_glyph_load_compound, pfr_glyph_curve_to, pfr_glyph_line_to):
  1.5815 +	Convert assertion into normal FreeType error.
  1.5816 +
  1.5817 +	* src/pfr/pfrtypes.h (PFR_GlyphRec): Comment out unused code.
  1.5818 +
  1.5819 +
  1.5820 +	* src/winfonts/winfnt.c (FNT_Face_Init): Check `family_size'.
  1.5821 +
  1.5822 +
  1.5823 +	* src/psaux/psobjs.c (ps_tocoordarray, ps_tofixedarray): Return -1
  1.5824 +	in case of parsing error.
  1.5825 +	(ps_parser_load_field): Updated.
  1.5826 +
  1.5827 +	* src/type1/t1load.c (parse_font_matrix): Updated.
  1.5828 +
  1.5829 +2007-06-04  Werner Lemberg  <wl@gnu.org>
  1.5830 +
  1.5831 +	* src/cid/cidgload.c (cid_load_glyph): Check `fd_select'.
  1.5832 +
  1.5833 +	* src/tools/ftrandom/Makefile: Depend on `libfreetype.a'.
  1.5834 +
  1.5835 +2007-06-03  Werner Lemberg  <wl@gnu.org>
  1.5836 +
  1.5837 +	* src/tools/ftrandom/*: Add the `ftrandom' test program written by
  1.5838 +	George Williams (with some modifications).
  1.5839 +
  1.5840 +2007-06-03  Werner Lemberg  <wl@gnu.org>
  1.5841 +
  1.5842 +	* src/base/ftobjs.c (destroy_charmaps), src/type1/t1objs.c
  1.5843 +	(T1_Face_Done), src/winfonts/winfnt.c (FNT_Face_Done): Check for
  1.5844 +	face == NULL.  Suggested by Graham Asher.
  1.5845 +
  1.5846 +2007-06-03  Ismail Dönmez  <ismail@pardus.org.tr>
  1.5847 +
  1.5848 +	* src/base/ftobjs.c (FT_Request_Metrics): Fix compiler warning.
  1.5849 +
  1.5850 +2007-06-02  Werner Lemberg  <wl@gnu.org>
  1.5851 +
  1.5852 +	* include/freetype/fterrdef.h (FT_Err_Corrupted_Font_Header,
  1.5853 +	FT_Err_Corrupted_Font_Glyphs): New error codes for BDF files.
  1.5854 +
  1.5855 +	* src/bdf/bdflib.c (bdf_load_font): Use them.
  1.5856 +
  1.5857 +	* src/bdf/bdflib.c (_bdf_parse_start): Check `FONT' better.
  1.5858 +
  1.5859 +2007-06-01  Werner Lemberg  <wl@gnu.org>
  1.5860 +
  1.5861 +	* src/base/ftobjs.c (FT_Request_Metrics), src/cache/ftccmap.c
  1.5862 +	(FTC_CMapCache_Lookup): Remove unused code.
  1.5863 +
  1.5864 +2007-06-01  Sean McBride  <sean@rogue-research.com>
  1.5865 +
  1.5866 +	* src/truetype/ttinterp.c (Null_Vector, NULL_Vector): Removed,
  1.5867 +	unused.
  1.5868 +
  1.5869 +2007-06-01  Werner Lemberg  <wl@gnu.org>
  1.5870 +
  1.5871 +	* src/cid/cidparse.c (cid_parser_new): Don't continue second search
  1.5872 +	pass for `StartData' if an error has occurred.
  1.5873 +	Exit properly if no `StartData' has been seen at all.
  1.5874 +
  1.5875 +	* builds/unix/ftsystem.c (FT_Stream_Open): Don't use ULONG_MAX but
  1.5876 +	LONG_MAX to avoid compiler warning.  Suggested by Sean McBride.
  1.5877 +
  1.5878 +2007-05-30  Werner Lemberg  <wl@gnu.org>
  1.5879 +
  1.5880 +	* src/type1/t1load.c (parse_subrs, parse_charstrings): Protect
  1.5881 +	against too small binary data strings.
  1.5882 +
  1.5883 +	* src/bdf/bdflib.c (_bdf_parse_glyphs): Check `STARTCHAR' better.
  1.5884 +
  1.5885 +2007-05-28  David Turner  <david@freetype.org>
  1.5886 +
  1.5887 +	* src/cff/cffgload.c (cff_slot_load): Do not apply the identity
  1.5888 +	transformation.  This significantly reduces the loading time of CFF
  1.5889 +	glyphs.
  1.5890 +
  1.5891 +	* docs/CHANGES: Updated.
  1.5892 +
  1.5893 +	* src/autofit/afglobal.c (AF_SCRIPT_LIST_DEFAULT): Change default
  1.5894 +	hinting script to CJK, since it works well with more scripts than
  1.5895 +	latin.  Thanks to Rahul Bhalerao <b.rahul.pm@gmail.com> for pointing
  1.5896 +	this out!
  1.5897 +
  1.5898 +2007-05-25  Werner Lemberg  <wl@gnu.org>
  1.5899 +
  1.5900 +	* docs/CHANGES: Updated.
  1.5901 +
  1.5902 +2007-05-24  Werner Lemberg  <wl@gnu.org>
  1.5903 +
  1.5904 +	* src/truetype/ttobjs.h (tt_size_ready_bytecode): Move declaration
  1.5905 +	into TT_USE_BYTECODE_INTERPRETER preprocessor block.
  1.5906 +
  1.5907 +2007-05-24  Graham Asher  <graham.asher@btinternet.com>
  1.5908 +
  1.5909 +	* src/truetype/ttobjs.c (tt_size_ready_bytecode)
  1.5910 +	[!TT_USE_BYTECODE_INTERPRETER]: Removed.  Unused.
  1.5911 +
  1.5912 +2007-05-22  David Turner  <david@freetype.org>
  1.5913 +
  1.5914 +	* src/truetype/ttgload.c (load_truetype_glyph): Fix last change to
  1.5915 +	avoid crashes in case the bytecode interpreter is not used.
  1.5916 +
  1.5917 +
  1.5918 +	Avoid heap blowup with very large .Z font files.  This fixes
  1.5919 +	Savannah bug #19910.
  1.5920 +
  1.5921 +	* src/lzw/ftzopen.h (FT_LzwStateRec): Remove `in_cursor',
  1.5922 +	`in_limit', `pad', `pad_bits', and `in_buff' members.
  1.5923 +	Add `buf_tab', `buf_offset', `buf_size', `buf_clear', and
  1.5924 +	`buf_total' members.
  1.5925 +
  1.5926 +	* src/lzw/ftzopen.c (ft_lzwstate_get_code): Rewritten.  It now takes
  1.5927 +	only one argument.
  1.5928 +	(ft_lzwstate_refill, ft_lzwstate_reset, ft_lzwstate_io): Updated.
  1.5929 +
  1.5930 +2007-05-20  Ismail Dönmez  <ismail@pardus.org.tr>
  1.5931 +
  1.5932 +	* src/pshinter/pshrec.c (ps_mask_table_set_bits): Add `const'.
  1.5933 +	(ps_dimension_set_mask_bits): Remove `const'.
  1.5934 +
  1.5935 +2007-05-19  Werner Lemberg  <wl@gnu.org>
  1.5936 +
  1.5937 +	* src/sfnt/ttmtx.c (tt_face_get_metrics)
  1.5938 +	[!FT_CONFIG_OPTION_OLD_INTERNALS]: Another type-punning fix.
  1.5939 +
  1.5940 +2007-05-19  Derek Clegg  <dclegg@apple.com>
  1.5941 +
  1.5942 +	Savannah patch #5929.
  1.5943 +
  1.5944 +	* include/freetype/tttables.h, src/base/ftobjcs.c
  1.5945 +	(FT_Get_CMap_Format): New function.
  1.5946 +
  1.5947 +	* include/freetype/internal/services/svttcmap.c (TT_CMapInfo): Add
  1.5948 +	`format' member.
  1.5949 +	* src/sfnt/ttcmap.c (tt_cmap{0,2,4,6,8,10,12}_get_info): Set
  1.5950 +	cmap_info->format.
  1.5951 +
  1.5952 +2007-05-19  Werner Lemberg  <wl@gnu.org>
  1.5953 +
  1.5954 +	* src/truetype/ttgload.c (load_truetype_glyph): Save graphics state
  1.5955 +	before handling subglyphs so that it can be reinitialized each time.
  1.5956 +	This fixes Savannah bug #19859.
  1.5957 +
  1.5958 +2007-05-16  Werner Lemberg  <wl@gnu.org>
  1.5959 +
  1.5960 +	* src/cache/ftccache.c (ftc_node_mru_link, ftc_node_mru_unlink),
  1.5961 +	src/cache/ftccache.h (FTC_CACHE_LOOKUP_CMP), src/cache/ftcglyph.h
  1.5962 +	(FTC_GCACHE_LOOKUP_CMP), src/pshinter/pshmod.c (ps_hinter_init),
  1.5963 +	src/sfnt/ttmtx.c (tt_face_load_hmtx, tt_face_load_hhea,
  1.5964 +	tt_face_get_metrics): Fix type-punning issues.
  1.5965 +
  1.5966 +2007-05-15  David Turner  <david@freetype.org>
  1.5967 +
  1.5968 +	* include/freetype/config/ftstdlib.h,
  1.5969 +	include/freetype/internal/ftobjs.h: As suggested by Graham Asher,
  1.5970 +	ensure that ft_isalnum, ft_isdigit, etc., use hard-coded values
  1.5971 +	instead on relying on the locale-dependent functions provided by
  1.5972 +	<ctypes.h>.
  1.5973 +
  1.5974 +2007-05-15  Graham Asher  <graham.asher@btinternet.com>
  1.5975 +
  1.5976 +	* src/autofit/afcjk.c (af_cjk_hints_compute_edges): Remove unused
  1.5977 +	variable.
  1.5978 +	* src/autofit/afloader.c (af_loader_load_g): Ditto.
  1.5979 +
  1.5980 +	* src/base/ftobjs.c (ft_validator_error): Use `ft_jmp_buf'.
  1.5981 +	(open_face_from_buffer): Initialize `stream'.
  1.5982 +	(FT_Request_Metrics): Remove unused variable.
  1.5983 +	Remove redundant `break' statements.
  1.5984 +	(FT_Get_Track_Kerning): Remove unused variable.
  1.5985 +
  1.5986 +	* src/psaux/afmparse.c (afm_parse_track_kern, afm_parse_kern_pairs,
  1.5987 +	afm_parse_kern_data): Remove redundant
  1.5988 +	`break' statements.
  1.5989 +	(afm_parser_parse): Ditto.
  1.5990 +	Don't use uninitialized variables.
  1.5991 +
  1.5992 +	* src/psnames/psmodule.c (VARIANT_BIT): Define as unsigned long.
  1.5993 +	Use `|' operator instead of `^' to set it.
  1.5994 +	Update all users.
  1.5995 +
  1.5996 +	* src/sfnt/ttcmap.c (tt_face_build_cmaps): Use `ft_jmp_buf'.
  1.5997 +	* src/sfnt/ttkern.c (tt_face_load_kern): Remove unused variable.
  1.5998 +
  1.5999 +	* src/truetype/ttgload.c (TT_Load_Simple_Glyph): Remove redundant
  1.6000 +	comparison.
  1.6001 +	(TT_Process_Simple_Glyph): Use FT_UInt for `n_points' and `i'.
  1.6002 +	(TT_Load_Glyph): Remove unused variable.
  1.6003 +
  1.6004 +2007-05-13  Derek Clegg  <dclegg@apple.com>
  1.6005 +
  1.6006 +	* src/base/ftobjs.c (FT_New_Library): Only allocate rendering pool
  1.6007 +	if FT_RENDER_POOL_SIZE is > 0.  From Savannah patch #5928.
  1.6008 +
  1.6009 +2007-05-11  David Turner  <david@freetype.org>
  1.6010 +
  1.6011 +	* src/cache/ftbasic.c, include/freetype/ftcache.h
  1.6012 +	(FTC_ImageCache_LookupScaler, FTC_SBit_Cache_LookupScaler): Two new
  1.6013 +	functions that allow us to look up glyphs using an FTC_Scaler object
  1.6014 +	to specify the size, making it possible to use fractional pixel
  1.6015 +	sizes.
  1.6016 +
  1.6017 +	* src/truetype/ttobjs.c (tt_size_ready_bytecode): Set
  1.6018 +	`size->cvt_ready'.  Reported by Boris Letocha.
  1.6019 +
  1.6020 +2007-05-09  Graham Asher  <graham.asher@btinternet.com>
  1.6021 +
  1.6022 +	* src/truetype/ttinterp.c (Ins_IP), src/autofit/aflatin.c
  1.6023 +	(af_latin_metrics_scale_dim): Fix compiler warnings.
  1.6024 +
  1.6025 +2007-05-06  Werner Lemberg  <wl@gnu.org>
  1.6026 +
  1.6027 +	* builds/win32/visualce/freetype.sln: Removed, as requested by
  1.6028 +	Vincent.
  1.6029 +
  1.6030 +2007-05-04  Vincent RICHOMME  <richom.v@free.fr>
  1.6031 +
  1.6032 +	* builds/win32/visualce/*: Add Visual C++ project files for Pocket
  1.6033 +	PC targets.
  1.6034 +
  1.6035 +	* docs/CHANGES: Document them.
  1.6036 +
  1.6037 +2007-05-04  <harry@kdevelop.org>
  1.6038 +
  1.6039 +	* builds/unix/ftsystem.c (FT_Stream_Open): Handle return value 0 of
  1.6040 +	mmap (which might happen on some RTOS).  From Savannah patch #5909.
  1.6041 +
  1.6042 +2007-05-03  Werner Lemberg  <wl@gnu.org>
  1.6043 +
  1.6044 +	* src/base/ftobjs.c (FT_Set_Char_Size): Simplify code.
  1.6045 +	* include/freetype/freetype.h (FT_Set_Char_Size): Update
  1.6046 +	documentation.
  1.6047 +
  1.6048 +2007-04-28  Victor Stinner  <victor.stinner@inl.fr>
  1.6049 +
  1.6050 +	* src/sfnt/sfobjs.c (sfnt_load_face): Check error code after loading
  1.6051 +	`cmap'.
  1.6052 +
  1.6053 +2007-04-27  Werner Lemberg  <wl@gnu.org>
  1.6054 +
  1.6055 +	* src/truetype/ttgload.c (TT_Load_Simple_Glyph): Check for negative
  1.6056 +	number of points in contours.  Problem reported by Victor Stinner
  1.6057 +	<victor.stinner@haypocalc.com>.
  1.6058 +	(TT_Process_Simple_Glyph): Synchronize variable types.
  1.6059 +
  1.6060 +2007-04-26  Werner Lemberg  <wl@gnu.org>
  1.6061 +
  1.6062 +	* src/base/ftglyph.c (FT_Glyph_Copy): Always set second argument to
  1.6063 +	zero in case of error.  This fixes Savannah bug #19689.
  1.6064 +
  1.6065 +2007-04-25  Boris Letocha  <b.letocha@cz.gmc.net>
  1.6066 +
  1.6067 +	* src/truetype/ttobjs.c: Fix a typo that created a speed regression
  1.6068 +	in the TrueType bytecode loader.
  1.6069 +
  1.6070 +2007-04-10  Martin Horak  <horakm@centrum.cz>
  1.6071 +
  1.6072 +	* src/sfnt/sfobjs.c (sfnt_load_face) [FT_CONFIG_OPTION_INCREMENTAL]:
  1.6073 +	Ignore `hhea' table.  This fixes Savannah bug #19261.
  1.6074 +
  1.6075 +2007-04-09  Werner Lemberg  <wl@gnu.org>
  1.6076 +
  1.6077 +
  1.6078 +	* Version 2.3.4 released.
  1.6079 +	=========================
  1.6080 +
  1.6081 +
  1.6082 +	Tag sources with `VER-2-3-4'.
  1.6083 +
  1.6084 +	* docs/CHANGES, docs/VERSION.DLL: Update documentation and bump
  1.6085 +	version number to 2.3.4.
  1.6086 +
  1.6087 +	* README, Jamfile (RefDoc), builds/win32/visualc/index.html,
  1.6088 +	builds/win32/visualc/freetype.dsp,
  1.6089 +	builds/win32/visualc/freetype.vcproj: s/2.3.3/2.3.4/, s/233/234/.
  1.6090 +
  1.6091 +	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 4.
  1.6092 +
  1.6093 +	* builds/unix/configure.raw (version_info): Set to 9:15:3.
  1.6094 +
  1.6095 +2007-04-09  Martin Horak  <horakm@centrum.cz>
  1.6096 +
  1.6097 +	* src/truetype/ttgload.c (load_truetype_glyph): Save and restore
  1.6098 +	memory stream to avoid a crash with the incremental memory
  1.6099 +	interface (Savannah bug #19260).
  1.6100 +
  1.6101 +2007-04-06  David Turner  <david@freetype.org>
  1.6102 +
  1.6103 +	* src/base/ftbimap.c (ft_bitmap_assure_buffer): Fix buffer-overwrite bug
  1.6104 +	(Savannah bug #19536).
  1.6105 +
  1.6106 +2007-04-04  Werner Lemberg  <wl@gnu.org>
  1.6107 +
  1.6108 +
  1.6109 +	* Version 2.3.3 released.
  1.6110 +	=========================
  1.6111 +
  1.6112 +
  1.6113 +	Tag sources with `VER-2-3-3'.
  1.6114 +
  1.6115 +	* docs/CHANGES: Mention CVE-2007-1351.
  1.6116 +
  1.6117 +2007-04-03  David Turner  <david@freetype.org>
  1.6118 +
  1.6119 +	* src/base/ftobjs.c (FT_Set_Char_Size): As suggested by James Cloos,
  1.6120 +	if one of the resolution values is 0, treat it as if it were the
  1.6121 +	same as the other value.
  1.6122 +
  1.6123 +2007-04-02  David Turner  <david@freetype.org>
  1.6124 +
  1.6125 +	Add special code to detect `extra-light' fonts and do not snap their
  1.6126 +	stem widths too much to avoid bizarre hinting effects.
  1.6127 +
  1.6128 +	* src/autofit/aflatin.h (AF_LatinAxisRec): Add `standard_width' and
  1.6129 +	`extra_light' members.
  1.6130 +
  1.6131 +	* src/autofit/aflatin.c (af_latin_metrics_init_widths): Initialize
  1.6132 +	them.
  1.6133 +	(af_latin_metrics_scale_dim): Set `extra_light'.
  1.6134 +	(af_latin_compute_stem_width): Use `extra_light'.
  1.6135 +
  1.6136 +2007-03-28  David Turner  <david@freetype.org>
  1.6137 +
  1.6138 +	* src/base/ftbitmap.c (ft_bitmap_assure_buffer): Fix zero-ing of the
  1.6139 +	padding.
  1.6140 +
  1.6141 +2007-03-28  Werner Lemberg  <wl@gnu.org>
  1.6142 +
  1.6143 +	* src/bdf/bdflib.c (setsbit, sbitset): Handle values >= 128
  1.6144 +	gracefully.
  1.6145 +	(_bdf_set_default_spacing): Increase `name' buffer size to 256 and
  1.6146 +	issue an error for longer names.  This fixes CVE-2007-1351.
  1.6147 +	(_bdf_parse_glyphs): Limit allowed number of glyphs in font to the
  1.6148 +	number of code points in Unicode.
  1.6149 +
  1.6150 +	* builds/win32/visualc/index.html,
  1.6151 +	builds/win32/visualc/freetype.dsp,
  1.6152 +	builds/win32/visualc/freetype.vcproj, README: s/2.3.2/2.3.3/,
  1.6153 +	s/232/233/.
  1.6154 +
  1.6155 +	* docs/CHANGES: Mention ftdiff.
  1.6156 +
  1.6157 +2007-03-26  David Turner  <david@freetype.org>
  1.6158 +
  1.6159 +	* src/truetype/ttinterp.c [FIX_BYTECODE]: Remove it and
  1.6160 +	corresponding code.
  1.6161 +	(Ins_MD): Last regression fix.
  1.6162 +
  1.6163 +	* src/autofit/aflatin.c (af_latin_metrics_init_blues): Fix blues
  1.6164 +	computations in order to ignore single-point contours.  These are
  1.6165 +	never rasterized and correspond in certain fonts to mark-attach
  1.6166 +	points that are very far from the glyph's real outline, ruining the
  1.6167 +	computation.
  1.6168 +
  1.6169 +	* src/autofit/afloader.c (af_loader_load_g): In the case of
  1.6170 +	monospaced fonts, always set `rsb_delta' and `lsb_delta' to 0.
  1.6171 +	Otherwise code that uses them will most certainly ruin the fixed
  1.6172 +	advance property.
  1.6173 +
  1.6174 +	* docs/CHANGES, docs/VERSION.DLL, README, Jamfile (RefDoc): Update
  1.6175 +	documentation and bump version number to 2.3.3.
  1.6176 +
  1.6177 +	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 3.
  1.6178 +
  1.6179 +	* builds/unix/configure.raw (version_info): Set to 9:14:3.
  1.6180 +
  1.6181 +2007-03-26  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6182 +
  1.6183 +	* builds/unix/ftconfig.in: Disable Carbon framework dependency on
  1.6184 +	64bit ABI on Mac OS X 10.4.x (ppc & i386).  Found by Sean McBride.
  1.6185 +	* builds/vms/ftconfig.h: Ditto.
  1.6186 +	* include/freetype/config/ftconfig.h: Ditto.
  1.6187 +
  1.6188 +2007-03-22  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6189 +
  1.6190 +	* builds/unix/ftsystem.c (FT_Stream_Open): Temporary fix to prevent
  1.6191 +	32bit unsigned long overflow by 64bit filesize on LP64 platform, as
  1.6192 +	proposed by Sean McBride:
  1.6193 +	http://lists.gnu.org/archive/html/freetype-devel/2007-03/msg00032.html
  1.6194 +
  1.6195 +2007-03-22  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6196 +
  1.6197 +	* builds/unix/ftconfig.in: Suppress SGI compiler's warning against
  1.6198 +	setjmp, proposed by Sean McBride:
  1.6199 +	http://lists.gnu.org/archive/html/freetype-devel/2007-03/msg00032.html
  1.6200 +
  1.6201 +2007-03-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6202 +
  1.6203 +	* builds/unix/configure.raw: Dequote `OS_INLINE' in comment of
  1.6204 +	conftest.c, to avoid unexpected shell evaluation.  Possibly it is a
  1.6205 +	bug or undocumented behaviour of autoconf.
  1.6206 +
  1.6207 +2007-03-18  David Turner   <david@freetype.org>
  1.6208 +
  1.6209 +	* src/truetype/ttinterp.c (Ins_MDRP): Another bytecode regression
  1.6210 +	fix; testing still needed.
  1.6211 +
  1.6212 +	* src/truetype/ttinterp.c (Ins_MD): Another bytecode regression fix.
  1.6213 +
  1.6214 +2007-03-17  David Turner   <david@freetype.org>
  1.6215 +
  1.6216 +	* src/truetype/ttinterp.c (Ins_IP): Fix wrong handling of the
  1.6217 +	(undocumented) twilight zone special case.
  1.6218 +
  1.6219 +2007-03-09  Werner Lemberg  <wl@gnu.org>
  1.6220 +
  1.6221 +
  1.6222 +	* Version 2.3.2 released.
  1.6223 +	=========================
  1.6224 +
  1.6225 +
  1.6226 +	Tag sources with `VER-2-3-2'.
  1.6227 +
  1.6228 +	* builds/win32/visualc/index.html,
  1.6229 +	builds/win32/visualc/freetype.dsp,
  1.6230 +	builds/win32/visualc/freetype.vcproj, README: s/2.3.1/2.3.2/,
  1.6231 +	s/231/232/.
  1.6232 +
  1.6233 +2007-03-08  David Turner  <david@freetype.org>
  1.6234 +
  1.6235 +	* docs/CHANGES, docs/VERSION.DLL: Updated for upcoming release.
  1.6236 +
  1.6237 +	* builds/unix/configure.raw (version_info): Set to 9:13:3.
  1.6238 +
  1.6239 +	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 2.
  1.6240 +
  1.6241 +	* README, Jamfile (RefDoc): s/2.3.1/2.3.2/.
  1.6242 +
  1.6243 +	* src/base/ftutil.c (ft_mem_strcpyn): Fix a bug that prevented the
  1.6244 +	function to work properly, over-writing user-provided buffers in
  1.6245 +	some cases.  Reported by James Cloos <cloos@jhcloos.com>.
  1.6246 +
  1.6247 +
  1.6248 +2007-03-05  Werner Lemberg  <wl@gnu.org>
  1.6249 +
  1.6250 +	* include/freetype/config/ftstdlib.h (ft_strstr): New wrapper
  1.6251 +	macro for `strstr'.
  1.6252 +
  1.6253 +	* src/truetype/ttobjs.c (tt_face_init): Use ft_strstr for scanning
  1.6254 +	`trick_names', as suggested by Ivan Nincic.
  1.6255 +
  1.6256 +2007-03-05  David Turner  <david@freetype.org>
  1.6257 +
  1.6258 +	* src/base/ftinit.c (FT_Init_FreeType): Fix a small memory leak in
  1.6259 +	case FT_Init_FreeType fails for some reason.  Problem reported by
  1.6260 +	Maximilian Schwerin <maximilian.schwerin@buelowssiege.de>.
  1.6261 +
  1.6262 +	* src/truetype/ttobs.c (tt_size_init_bytecode): Clear the `x_ppem'
  1.6263 +	and `y_ppem' fields of the `TT_Size.metrics' structure, not those of
  1.6264 +	`TT_Size.root.metrics'.  Problem reported by Daniel Glöckner
  1.6265 +	<daniel-gl@gmx.net>.
  1.6266 +
  1.6267 +	* src/type1/t1afm.c (T1_Read_PFM): Read kerning values as 16-bit
  1.6268 +	signed values, not unsigned ones.  Problem reported by Johannes
  1.6269 +	Walther <joh_walt@yahoo.de>.
  1.6270 +
  1.6271 +2007-02-21  David Turner  <david@freetype.org>
  1.6272 +
  1.6273 +	* src/pshinter/pshalgo.c (psh_hint_align): Fix a bug in the hinting
  1.6274 +	of small and ghost stems in the Postscript interpreter.
  1.6275 +
  1.6276 +2007-02-20  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6277 +
  1.6278 +	* src/base/ftmac.c (FT_GetFileRef_From_Mac_ATS_Name): Fix memory
  1.6279 +	leak, patch by "Jjgod Jiang" <gzjjgod@gmail.com>.
  1.6280 +	* builds/mac/ftmac.c (FT_GetFileRef_From_Mac_ATS_Name): Ditto.
  1.6281 +
  1.6282 +2007-02-16  Werner Lemberg  <wl@gnu.org>
  1.6283 +
  1.6284 +	* src/truetype/ttinterp.c (Ins_MD): Remove unused variable.
  1.6285 +	* src/autofit/aflatin.c (af_latin_hints_link_segments): Ditto.
  1.6286 +
  1.6287 +2007-02-14  David Turner  <david@freetype.org>
  1.6288 +
  1.6289 +	It seems that the following changes fix most of the known
  1.6290 +	interpreter problems with my fonts, but more testing is needed,
  1.6291 +	though.
  1.6292 +
  1.6293 +	* src/truetype/ttinterp.c (FIX_BYTECODE): Activate.
  1.6294 +	(TT_MulFix14): Rewrite.
  1.6295 +	(Ins_MD, Ins_MDRP, Ins_IP) [FIX_BYTECODE]: Improved and updated.
  1.6296 +	(Ins_MIRP): Ditto.
  1.6297 +
  1.6298 +2007-02-12  Werner Lemberg  <wl@gnu.org>
  1.6299 +
  1.6300 +	* src/truetype/ttinterp.c (Project_x, Project_y): Remove compiler
  1.6301 +	warnings.
  1.6302 +
  1.6303 +	* src/pcf/pcfread.c (pcf_interpret_style), src/bdf/bdfdrivr.c
  1.6304 +	(bdf_interpret_style): Ditto.
  1.6305 +
  1.6306 +2007-02-12  David Turner  <david@freetype.org>
  1.6307 +
  1.6308 +	Simplify projection and dual-projection code interface.
  1.6309 +
  1.6310 +	* src/truetype/ttinterp.h (TT_Project_Func): Use `FT_Pos', not
  1.6311 +	FT_Vector' as argument type.
  1.6312 +	* src/truetype/ttinterp.c (CUR_Func_project, CUR_Func_dualproj):
  1.6313 +	Updated.
  1.6314 +	(CUR_fast_project, CUR_fast_dualproj): New macros.
  1.6315 +	(Project, Dual_Project, Project_x, Project_y): Updated.
  1.6316 +	(Ins_GC, Ins_SCFS, Ins_MDAP, Ins_MIAP, Ins_IP): Use new `fast'
  1.6317 +	macros.
  1.6318 +
  1.6319 +
  1.6320 +	* src/autofit/afloader.c (af_loader_load_g): Improve spacing
  1.6321 +	adjustments for the non-light auto-hinted modes.  Gets rid of
  1.6322 +	`inter-letter spacing is too wide' problems.
  1.6323 +
  1.6324 +	* src/autofit/aflatin.c (af_latin_hints_link_segments,
  1.6325 +	af_latin_hints_compute_edges): Slight optimization of the segment
  1.6326 +	linker and better handling of serif segments to get rid of broken
  1.6327 +	`9' in Arial at 9pt (96dpi).
  1.6328 +
  1.6329 +
  1.6330 +	Introduce new string functions and the corresponding macros to get
  1.6331 +	rid of various uses of strcpy and other `evil' functions, as well as
  1.6332 +	to simplify a few things.
  1.6333 +
  1.6334 +	* include/freetype/internal/ftmemory.h (ft_mem_strdup, ft_mem_dup,
  1.6335 +	ft_mem_strcpyn): New declarations.
  1.6336 +	(FT_MEM_STRDUP, FT_STRDUP, FT_MEM_DUP, FT_DUP, FT_STRCPYN): New
  1.6337 +	macros.
  1.6338 +	* src/base/ftutil.c (ft_mem_dup, ft_mem_strdup, ft_mem_strcpyn): New
  1.6339 +	functions.
  1.6340 +
  1.6341 +	* src/bfd/bfddrivr.c (bdf_interpret_style, BDF_Face_Init),
  1.6342 +	src/bdf/bdflib.c (_bdf_add_property), src/pcf/pcfread.c
  1.6343 +	(pcf_get_properties, pcf_interpret_style, pcf_load_font),
  1.6344 +	src/cff/cffdrivr.c (cff_get_glyph_name), src/cff/cffload.c
  1.6345 +	(cff_index_get_sid_string), src/cff/cffobjs.c (cff_strcpy),
  1.6346 +	src/sfnt/sfdriver.c (sfnt_get_glyph_name), src/type1/t1driver.c
  1.6347 +	(t1_get_glyph_name), src/type42/t42drivr.c (t42_get_glyph_name,
  1.6348 +	t42_get_name_index): Use new functions and simplify code.
  1.6349 +
  1.6350 +	* builds/mac/ftmac.c (FT_FSPathMakeSpec): Don't use FT_MIN.
  1.6351 +
  1.6352 +2007-02-11  Werner Lemberg  <wl@gnu.org>
  1.6353 +
  1.6354 +	* src/autofit/afloader.c (af_loader_load_g): Don't change width for
  1.6355 +	non-spacing glyphs.
  1.6356 +
  1.6357 +2007-02-07  Tom Parker  <palfrey@tevp.net>
  1.6358 +
  1.6359 +	* src/cff/cffdrivr.c (cff_get_name_index): Protect against NULL
  1.6360 +	pointer.
  1.6361 +
  1.6362 +2007-02-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6363 +
  1.6364 +	* include/freetype/ftmac.h (FT_DEPRECATED_ATTRIBUTE):
  1.6365 +	Introduce __attribute((deprecated))__ to warn functions
  1.6366 +	which use non-ANSI data types in its interfaces.
  1.6367 +	(FT_GetFile_From_Mac_Name): Deprecated, using FSSpec.
  1.6368 +	(FT_GetFile_From_Mac_ATS_Name): Deprecated, using FSSpec.
  1.6369 +	(FT_New_Face_From_FSSpec): Deprecated, using FSSpec.
  1.6370 +	(FT_New_Face_From_FSRef): Deprecated, using FSRef.
  1.6371 +
  1.6372 +	* src/base/ftmac.c: Predefine FT_DEPRECATED_ATTRIBUTE as void
  1.6373 +	to avoid warning in building FreeType.
  1.6374 +	* builds/mac/ftmac.c: Ditto.
  1.6375 +
  1.6376 +2007-02-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6377 +
  1.6378 +	* src/base/ftbase.c: Fix to use builds/mac/ftmac.c, if configured
  1.6379 +	`--with-fsspec' etc.  Replace #include "ftmac.c" with
  1.6380 +	#include <ftmac.c>.
  1.6381 +
  1.6382 +2007-02-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6383 +
  1.6384 +	* include/freetype/ftmac.h (FT_GetFilePath_From_Mac_ATS_Name):
  1.6385 +	Introduced as replacement of FT_GetFile_From_Mac_ATS_Name.
  1.6386 +	* src/base/ftmac.c (FT_GetFilePath_From_Mac_ATS_Name): Ditto.
  1.6387 +	(FT_GetFile_From_Mac_ATS_Name): Rewritten as wrapper of
  1.6388 +	FT_GetFilePath_From_Mac_ATS_Name.
  1.6389 +	* builds/mac/ftmac.c: Ditto.
  1.6390 +
  1.6391 +2007-02-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6392 +
  1.6393 +	* include/freetype/ftmac.h: Fixed wrong comment: FSSpec of
  1.6394 +	FT_GetFile_From_Mac_Name, FT_GetFile_From_Mac_ATS_Name are
  1.6395 +	for passing to FT_New_Face_From_FSSpec.
  1.6396 +
  1.6397 +2007-02-05  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6398 +
  1.6399 +	* builds/unix/configure.raw: Check whether Mac OS X system headers
  1.6400 +	can be built under ANSI C mode.
  1.6401 +
  1.6402 +	* src/base/ftmac.c (OS_INLINE): Redefine OS_INLINE by a version
  1.6403 +	compatible to ANSI C in case system headers are ANSI C incompatible.
  1.6404 +	* builds/mac/ftmac.c (OS_INLINE): Ditto.
  1.6405 +
  1.6406 +2007-02-01  Werner Lemberg  <wl@gnu.org>
  1.6407 +
  1.6408 +	* include/freetype/ttnameid.h (TT_MS_LANGID_DZONGHKA_BHUTAN):
  1.6409 +	Explain why applications shouldn't use it.  Found by Alexei.
  1.6410 +
  1.6411 +2007-02-01  Alexei Podtelezhnikov  <apodtele@gmail.com>
  1.6412 +
  1.6413 +	* builds/unix/freetype2.m4 (AC_CHECK_FT2): Fix spelling of warning
  1.6414 +	message.
  1.6415 +
  1.6416 +	* src/gxvalid/gxvmort1.c
  1.6417 +	(gxv_mort_subtable_type1_substTable_validate): Fix debugging
  1.6418 +	message.
  1.6419 +
  1.6420 +2007-01-31  Werner Lemberg  <wl@gnu.org>
  1.6421 +
  1.6422 +
  1.6423 +	* Version 2.3.1 released.
  1.6424 +	=========================
  1.6425 +
  1.6426 +
  1.6427 +	Tag sources with `VER-2-3-1-FINAL'.
  1.6428 +
  1.6429 +	* builds/win32/visualc/freetype.dsp,
  1.6430 +	builds/win32/visualc/freetype.vcproj: s/230/231/.
  1.6431 +	* builds/win32/visualc/index.html: s/221/231/.
  1.6432 +
  1.6433 +	* vms_make.com: Add `ftgasp'.
  1.6434 +
  1.6435 +2007-01-30  David Turner  <david@freetype.org>
  1.6436 +
  1.6437 +	Tag sources with VER-2-3-1 to prepare release.
  1.6438 +
  1.6439 +	* include/freetype/freetype.h (FREETYPE_PATCH): Set to 1.
  1.6440 +
  1.6441 +	* docs/VERSION.DLL, docs/release, README, Jamfile (RefDoc):
  1.6442 +	s/2.3.0/2.3.1/.
  1.6443 +
  1.6444 +	* builds/unix/configure.raw (version_info): Set to 9:12:3.
  1.6445 +
  1.6446 +
  1.6447 +	* src/autofit/aftypes.h (AF_USE_WARPER), src/autofit/afloader.c
  1.6448 +	(af_loader_load_g): Disable the warper (i.e., the light hinting
  1.6449 +	improvements) to make a 2.3.1 bugfix release before introducing a
  1.6450 +	new feature.  This should give us more time to tune and improve the
  1.6451 +	warper for the next release.
  1.6452 +
  1.6453 +	* docs/CHANGES: Update accordingly.
  1.6454 +
  1.6455 +2007-01-25  David Turner  <david@freetype.org>
  1.6456 +
  1.6457 +	For light auto-hinting, improve glyph advance widths and resurrect
  1.6458 +	normal/full hinting to its normal quality.
  1.6459 +
  1.6460 +	* src/autofit/afhints.h (AF_GlyphHintsRec): New members `xmin_delta'
  1.6461 +	and `xmax_delta'.
  1.6462 +	* src/autofit/afhints.c (af_glyph_hints_reload): Reset `xmin_delta'
  1.6463 +	and `xmax_delta'.
  1.6464 +
  1.6465 +	* src/autofit/afloader.c (af_loader_load_g) <AF_USE_WARPER>: Replace
  1.6466 +	preprocessor conditional with if-clause, handling both light and
  1.6467 +	normal mode.
  1.6468 +
  1.6469 +	* src/autofit/afwarp.c (AF_WarpScore): Fine-tune again.
  1.6470 +	(af_warper_compute): Handle `xmin_delta' and `xmax_delta'.
  1.6471 +
  1.6472 +2007-01-25  Werner Lemberg  <wl@gnu.org>
  1.6473 +
  1.6474 +	* docs/release: Updated -- Savannah uses a new uploading scheme.
  1.6475 +
  1.6476 +2007-01-25  David Turner  <david@freetype.org>
  1.6477 +
  1.6478 +	* src/cff/cffload.c (cff_index_get_pointers): Improve previous fix.
  1.6479 +
  1.6480 +	* src/cff/cffgload.c (cff_decoder_parse_charstrings)
  1.6481 +	<cff_op_callsubr, cff_op_callgsubr>: Fix sanity check for empty
  1.6482 +	functions.
  1.6483 +
  1.6484 +	* docs/CHANGES: Document light auto-hinting improvement.
  1.6485 +
  1.6486 +2007-01-25  Werner Lemberg  <wl@gnu.org>
  1.6487 +
  1.6488 +	* src/cff/cffload.c (cff_index_get_pointers): Handle last entry
  1.6489 +	correctly in a sanity check.  Since this function is only used to
  1.6490 +	load local and global functions, any charstring that called the last
  1.6491 +	local/global function would fail otherwise.  This fixes Savannah bug
  1.6492 +	#18867.
  1.6493 +
  1.6494 +	* docs/CHANGES: Document it.
  1.6495 +
  1.6496 +2007-01-23  David Turner  <david@freetype.org>
  1.6497 +
  1.6498 +	* src/truetype/ttobjs.c (tt_size_ready_bytecode): Fix typo that
  1.6499 +	prevented compilation when disabling both the unpatented and the
  1.6500 +	bytecode interpreter in the TrueType font driver.
  1.6501 +
  1.6502 +
  1.6503 +	Fix and enable the warper to improve `light' hinting mode.  This is
  1.6504 +	not necessarily a final version, but it seems to work well.
  1.6505 +
  1.6506 +	* src/autofit/aflatin.c (af_latin_hints_init) [AF_USE_WARPER]:
  1.6507 +	Disable code.
  1.6508 +	(af_latin_hints_apply) [AF_USE_WARPER]: Handle FT_RENDER_MODE_LIGHT.
  1.6509 +	* src/autofit/aftypes.h: Activate AF_USE_WARPER.
  1.6510 +
  1.6511 +	* src/autofit/afwarp.c (AF_WarpScore): Tune table.
  1.6512 +	(af_warper_compute_line_best): Fix array size of `scores'.
  1.6513 +	(af_warper_compute): Better handling of border cases.
  1.6514 +	* src/autofit/afwarp.h (AF_WarperRec): Remove unused members `X1'
  1.6515 +	and `X2'.
  1.6516 +
  1.6517 +2007-01-21  Werner Lemberg  <wl@gnu.org>
  1.6518 +
  1.6519 +	* ChangeLog: Split off older entries into...
  1.6520 +	* ChangeLog.22: This new file.
  1.6521 +
  1.6522 +2007-01-21  Werner Lemberg  <wl@gnu.org>
  1.6523 +
  1.6524 +	* docs/CHANGES: Document SHZ fix.
  1.6525 +
  1.6526 +2007-01-21  George Williams  <gww@silcom.com>
  1.6527 +
  1.6528 +	* src/truetype/ttinterp.c (Ins_SHZ): SHZ doesn't move phantom
  1.6529 +	points.
  1.6530 +
  1.6531 +2007-01-21  Werner Lemberg  <wl@gnu.org>
  1.6532 +
  1.6533 +	* src/sfnt/ttmtx.c (tt_face_get_metrics)
  1.6534 +	[!FT_CONFIG_OPTION_OLD_INTERNALS]: Fix limit check.
  1.6535 +
  1.6536 +2007-01-17  Werner Lemberg  <wl@gnu.org>
  1.6537 +
  1.6538 +
  1.6539 +	* Version 2.3.0 released.
  1.6540 +	=========================
  1.6541 +
  1.6542 +
  1.6543 +	Tag sources with `VER-2-3-0-FINAL'.
  1.6544 +
  1.6545 +2007-01-17  Werner Lemberg  <wl@gnu.org>
  1.6546 +
  1.6547 +	* docs/release: Updated.
  1.6548 +
  1.6549 +2007-01-16  David Turner  <david@freetype.org>
  1.6550 +
  1.6551 +	* src/autofit/aflatin.c (af_latin_hints_compute_segments),
  1.6552 +	src/cff/cffdriver.c (cff_ps_get_font_info), src/truetype/ttobjs.c
  1.6553 +	(tt_face_init), src/truetype/ttinterp.c (Ins_SHC): Fix compiler
  1.6554 +	warnings.
  1.6555 +
  1.6556 +2007-01-15  Detlef Würkner  <TetiSoft@apg.lahn.de>
  1.6557 +
  1.6558 +	* builds/amiga/makefile, builds/amiga/makefile.os4,
  1.6559 +	builds/amiga/smakefile: Add `ftgasp.c' and `ftlcdfil.c'.
  1.6560 +
  1.6561 +	* builds/amiga/include/freetype/config/ftconfig.h: Synchronize.
  1.6562 +
  1.6563 +2007-01-14  Detlef Würkner  <TetiSoft@apg.lahn.de>
  1.6564 +
  1.6565 +	Fix various compiler warnings.
  1.6566 +
  1.6567 +	* src/truetype/ttdriver.c (tt_size_select), src/cff/cffobjs.h,
  1.6568 +	src/cff/cffobjs.c (cff_size_request), src/type42/t42objs.h:
  1.6569 +	s/index/strike_index/.
  1.6570 +	* src/base/ftobjs.c (FT_Match_Size): s/index/size_index/.
  1.6571 +
  1.6572 +	* src/gxvalid/gxvmorx5.c
  1.6573 +	(gxv_morx_subtable_type5_InsertList_validate): s/index/table_index/.
  1.6574 +
  1.6575 +	* src/truetype/ttinterp.c (Compute_Point_Displacement),
  1.6576 +	src/pcf/pcfread.c (pcf_seek_to_table_type): Avoid possibly
  1.6577 +	uninitialized variables.
  1.6578 +
  1.6579 +2007-01-13  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6580 +
  1.6581 +	* docs/CHANGES, docs/INSTALL.MAC: Improvements.
  1.6582 +
  1.6583 +2007-01-13  Werner Lemberg  <wl@gnu.org>
  1.6584 +
  1.6585 +	* src/type1/t1afm.c (T1_Read_Metrics): MS Windows allows PFM
  1.6586 +	versions up to 0x3FF without complaining.
  1.6587 +
  1.6588 +2007-01-13  Derek Clegg  <dclegg@apple.com>
  1.6589 +
  1.6590 +	Add FT_Get_PS_Font_Info interface to CFF driver.
  1.6591 +
  1.6592 +	* src/cff/cfftypes.h: Include FT_TYPE1_TABLES_H.
  1.6593 +	(CFF_FontRec): Add `font_info' field.
  1.6594 +
  1.6595 +	* src/cff/cffload.c: Include FT_TYPE1_TABLES_H.
  1.6596 +	(cff_font_done): Free font->font_info if necessary.
  1.6597 +
  1.6598 +	* src/cff/cffdrvr.c (cff_ps_get_font_info): New function.
  1.6599 +	(cff_service_ps_info): Register cff_ps_get_font_info.
  1.6600 +
  1.6601 +2007-01-13  Werner Lemberg  <wl@gnu.org>
  1.6602 +
  1.6603 +	* src/base/ftoutln.c (FT_Outline_Get_Orientation): Fix compilation
  1.6604 +	with C++ compiler.
  1.6605 +
  1.6606 +	* src/autofit/afhints.c (af_glyph_hints_dump_segments,
  1.6607 +	af_glyph_hints_dump_edges): Ditto.
  1.6608 +
  1.6609 +	* src/base/rules.mk (BASE_SRC): Remove ftgasp.c (it's already in
  1.6610 +	`modules.cfg').
  1.6611 +
  1.6612 +	* src/sfnt/ttsbit0.h: Remove.
  1.6613 +
  1.6614 +	* src/sfnt/rules.mk (SFNT_DRV_SRC): Don't include ttsbit0.c.
  1.6615 +
  1.6616 +2007-01-12  David Turner  <david@freetype.org>
  1.6617 +
  1.6618 +	* src/base/ftbitmap.c (ft_bitmap_assure_buffer): Fix memory stomping
  1.6619 +	bug in the bitmap emboldener if the pitch of the source bitmap is
  1.6620 +	much larger than its width.
  1.6621 +
  1.6622 +	* src/truetype/ttinterp.c (Update_Max): Fix aliasing-related
  1.6623 +	compilation warning.
  1.6624 +
  1.6625 +2007-01-12  Werner Lemberg  <wl@gnu.org>
  1.6626 +
  1.6627 +	* builds/unix/install-sh, builds/unix/mkinstalldirs: Updated from
  1.6628 +	`automake' CVS module from sources.redhat.com.
  1.6629 +
  1.6630 +2007-01-11  Werner Lemberg  <wl@gnu.org>
  1.6631 +
  1.6632 +	* src/type1/t1load.c (is_space): Removed.
  1.6633 +	(parse_encoding, parse_charstrings): Use IS_PS_DELIM.
  1.6634 +	(parse_charstrings): Use IS_PS_TOKEN.
  1.6635 +
  1.6636 +
  1.6637 +	* autogen.sh: Avoid bash specific syntax.
  1.6638 +
  1.6639 +2007-01-11  David Turner  <david@freetype.org>
  1.6640 +
  1.6641 +	* docs/CHANGES: Small update.
  1.6642 +
  1.6643 +	* builds/unix/configure.raw (version_info): Set to 9:11:3.
  1.6644 +
  1.6645 +	* src/base/ftobjs.c (IsMacResource): Fix a small bug that caused a
  1.6646 +	crash with some Mac OS X .dfont files.  Submitted by Masatake
  1.6647 +	Yamato.
  1.6648 +
  1.6649 +	* autogen.sh: Small fix to get it working on Mac OS X properly:
  1.6650 +	The issue is that GNU libtool is called `glibtool' on this platform,
  1.6651 +	and we must call `glibtoolize', since `libtoolize' doesn't exist.
  1.6652 +
  1.6653 +2007-01-10  David Turner  <david@freetype.org>
  1.6654 +
  1.6655 +	* all-sources: Tag all sources with VER-2-3-0-RC1 and
  1.6656 +	VER-2-3-0.
  1.6657 +
  1.6658 +	* Jamfile (RefDoc), README, builds/win32/visualc/freetype.dsp,
  1.6659 +	builds/win32/visualc/freetype.vcproj, docs/VERSION.DLL: Update
  1.6660 +	version number to 2.3.0.
  1.6661 +
  1.6662 +	* include/freetype/freetype.h (FREETYPE_MINOR): Set to 3.
  1.6663 +	(FREETYPE_PATCH): Set to 0.
  1.6664 +
  1.6665 +	* include/freetype/ftchapters.h, include/freetype/ftgasp.h,
  1.6666 +	include/freetype/ftlcdfil.h: Update reference documentation with
  1.6667 +	GASP support and LCD filtering sections.
  1.6668 +
  1.6669 +	* src/pshinter/pshalgo.c (psh_glyph_compute_inflections): Fix a typo
  1.6670 +	which created an endless loop with some malformed font files.
  1.6671 +
  1.6672 +2007-01-10  Derek Clegg  <dclegg@apple.com>
  1.6673 +
  1.6674 +	* src/type1/t1load.c (T1_Get_MM_Var): Always return fixed-point
  1.6675 +	values.
  1.6676 +
  1.6677 +2007-01-08  David Turner  <david@freetype.org>
  1.6678 +
  1.6679 +	* docs/CHANGES: Updated.
  1.6680 +
  1.6681 +	* include/freetype/ftgasp.h, src/base/ftgasp.c: New files which add
  1.6682 +	a new API `FT_Get_Gasp' to return entries of the `gasp' table
  1.6683 +	corresponding to a given character pixel size.
  1.6684 +
  1.6685 +	* src/sfnt/ttload.c (tt_face_load_gasp): Add version check for the
  1.6686 +	`gasp' table, in order to avoid potential problems with later
  1.6687 +	versions.
  1.6688 +
  1.6689 +	* include/freetype/config/ftheader.h (FT_GASP_H): New macro for
  1.6690 +	<freetype/ftgasp.h>.
  1.6691 +
  1.6692 +	* src/base/rules.mk (BASE_SRC), src/base/Jamfile (_sources),
  1.6693 +	modules.cfg (BASE_EXTENSIONS), builds/win32/visualc/freetype.dsp,
  1.6694 +	builds/win32/visualc/freetype.vcproj: Add src/base/ftgasp.c to the
  1.6695 +	default build.
  1.6696 +
  1.6697 +2007-01-07  Werner Lemberg  <wl@gnu.org>
  1.6698 +
  1.6699 +	* src/cid/cidparse.c (cid_parser_new): Improve error message for
  1.6700 +	Type 11 fonts.
  1.6701 +	Scan for `/sfnts' token.
  1.6702 +
  1.6703 +2007-01-07  Werner Lemberg  <wl@gnu.org>
  1.6704 +
  1.6705 +	* src/cid/cidparse.c (cid_parser_new): Reject Type 11 fonts.
  1.6706 +
  1.6707 +2007-01-06  Werner Lemberg  <wl@gnu.org>
  1.6708 +
  1.6709 +	* src/cff/cffload.c (cff_index_init): Remove unused variable.
  1.6710 +	(cff_index_read_offset): s/perror/errorp/ to avoid global shadowing.
  1.6711 +
  1.6712 +2007-01-04  David Turner  <david@freetype.org>
  1.6713 +
  1.6714 +	* src/pfr/pfrobjs.c (pfr_face_init): Detect non-scalable fonts
  1.6715 +	correctly.  This fixes Savannah bug #17876.
  1.6716 +
  1.6717 +
  1.6718 +	Do not allocate interpreter-specific tables in memory if we are not
  1.6719 +	going to load glyphs with the bytecode interpreter anyway.
  1.6720 +
  1.6721 +	* src/truetype/ttgload.c (tt_loader_init): Load execution context
  1.6722 +	only if glyph is hinted.
  1.6723 +	Updated.
  1.6724 +	* src/truetype/ttobjs.h (TT_SizeRec): Add members `bytecode_ready'
  1.6725 +	and `cvs_ready'.
  1.6726 +	Add `tt_size_ready_bytecode' declaration.
  1.6727 +	* src/truetype/ttobjs.c (tt_size_done_bytecode,
  1.6728 +	tt_size_init_bytecode, tt_size_ready_bytecode): New functions.
  1.6729 +	(tt_size_init): Move most code into `tt_size_init_bytecode'.
  1.6730 +	(tt_size_done): Move most code into `tt_size_done_bytecode'.
  1.6731 +	(tt_size_reset): Move some code to `tt_size_ready_bytecode'.
  1.6732 +
  1.6733 +
  1.6734 +	Don't extract the metrics table from the SFNT font file.  Instead,
  1.6735 +	reparse it on each glyph load.  The runtime difference is not
  1.6736 +	noticeable, and it can save a lot of heap memory when memory-mapped
  1.6737 +	files are not used.
  1.6738 +
  1.6739 +	* include/freetype/internal/tttypes.h (TT_FaceRec): Add members
  1.6740 +	`horz_metrics_offset' and `vert_metrics_ofset'.
  1.6741 +	* src/sfnt/ttmtx.c (tt_face_load_hmtx, tt_face_get_metrics):
  1.6742 +	Updated.
  1.6743 +
  1.6744 +
  1.6745 +	* src/sfnt/ttcmap.c (tt_cmap4_validate): Slight optimization.
  1.6746 +
  1.6747 +
  1.6748 +	Do not load the CFF index offsets into memory, since this wastes a
  1.6749 +	*lot* of heap memory with large Asian CFF fonts.  There is no
  1.6750 +	significant performance loss.
  1.6751 +
  1.6752 +	* src/cff/cffload.h: Add `cff_charset_cid_to_gindex' declaration.
  1.6753 +	* src/cff/cfftypes.h (CFF_IndexRec): Add fields `start' and
  1.6754 +	`data_size'.
  1.6755 +	(CFF_CharsetRec): Add field `num_glyphs'.
  1.6756 +
  1.6757 +	* src/cff/cffload.c (cff_index_read_offset, cff_index_load_offsets,
  1.6758 +	cff_charset_cid_to_gindex): New functions.
  1.6759 +	(cff_new_index): Renamed to...
  1.6760 +	(cff_index_init): This.  Update all callers.
  1.6761 +	Updated -- some code has been moved to `cff_index_load_offsets'.
  1.6762 +	(cff_done_index): Renamed to...
  1.6763 +	(cff_index_done): This.  Update all callers.
  1.6764 +	(cff_index_get_pointers, cff_index_access_element): Updated to use
  1.6765 +	stream offsets.
  1.6766 +	(cff_charset_compute_cids): Set `num_glyphs' field.
  1.6767 +	(cff_encoding_load): Updated.
  1.6768 +
  1.6769 +	* src/cff/cffgload.c (cff_slot_load): Updated.
  1.6770 +
  1.6771 +2007-01-04  David Turner  <david@freetype.org>
  1.6772 +
  1.6773 +	* docs/INSTALL.UNIX: Simplify some parts, add reference to
  1.6774 +	autogen.sh and pointer to README.CVS.
  1.6775 +
  1.6776 +	* README.CVS: Add common problem description and solution
  1.6777 +	when running autogen.sh.
  1.6778 +
  1.6779 +	* docs/INSTALL: Add reference to MacOS X.
  1.6780 +
  1.6781 +	* docs/MAKEPP, docs/INSTALL.MAC: New documentation files.
  1.6782 +
  1.6783 +	* docs/TODO: Remove obsolete items.
  1.6784 +
  1.6785 +	* src/raster/ftraster.c: (TRaster_Instance): Replace it with...
  1.6786 +	(TWorker): This.
  1.6787 +	Remove `count_table' and `memory'.
  1.6788 +	Make `grays' a pointer.
  1.6789 +	(TRaster): New structure.
  1.6790 +	(count_table): New static array.
  1.6791 +	(RAS_ARGS, RAS_ARG, RAS_VARS, RAS_VAR, FT_UNUSED_RASTER, cur_ras,
  1.6792 +	Vertical_Gray_Sweep_Step, ft_black_new, ft_black_done,
  1.6793 +	ft_black_set_mode, ft_black_render): Updated.
  1.6794 +	(ft_black_init): Don't initialize `count_table'.
  1.6795 +	(ft_black_reset): Use the render pool.  This saves about 6KB of
  1.6796 +	heap space for each FT_Library instance.
  1.6797 +
  1.6798 +	* src/smooth/ftgrays.c (TRaster): Replaced with...
  1.6799 +	(TWorker): This.
  1.6800 +	Remove `memory'.
  1.6801 +	(TRaster): New structure.
  1.6802 +
  1.6803 +	(RAS_ARG_, RAS_ARG, RAS_VAR_, RAS_VAR, ras, gray_render_line,
  1.6804 +	gray_move_to, gray_line_to, gray_conic_to, gray_cubic_to,
  1.6805 +	gray_render_span, gray_raster_render): Updated.
  1.6806 +	(gray_raster_reset): Use the render pool.  This saves about 6KB of
  1.6807 +	heap space for each FT_Library instance.
  1.6808 +
  1.6809 +	* src/sfnt/sfobjs.c, src/sfnt/ttkern.c, src/sfnt/ttkern.h,
  1.6810 +	src/sfnt/ttmtx.c, src/sfnt/ttsbit.c, src/sfnt/ttsbit.h,
  1.6811 +	src/truetype/ttpload.c, include/freetype/config/ftoption.h: Remove
  1.6812 +	FT_OPTIMIZE_MEMORY macro (and code for !FT_OPTIMIZE_MEMORY) since
  1.6813 +	the optimization is no longer experimental.
  1.6814 +
  1.6815 +	* src/pshinter/pshalgo.c (psh_glyph_interpolate_normal_points):
  1.6816 +	Remove a typo that results in no hinting and a memory leak with some
  1.6817 +	large Asian CFF fonts.
  1.6818 +
  1.6819 +	* src/base/ftobjs.c (FT_Done_Library): Remove a subtle memory leak
  1.6820 +	which happens when FT_Done_Library is called with still opened
  1.6821 +	CFF_Faces in it.  We need to close all faces before destroying the
  1.6822 +	modules, or else some bad things (memory leaks) may happen.
  1.6823 +
  1.6824 +2007-01-02  Werner Lemberg  <wl@gnu.org>
  1.6825 +
  1.6826 +	* src/gxvalid/gxvkern.c (gxv_kern_subtable_fmt0_pairs_validate):
  1.6827 +	Remove compiler warning.
  1.6828 +
  1.6829 +2007-01-02  David Turner  <david@freetype.org>
  1.6830 +
  1.6831 +	* src/sfnt/sfobjs.c: Add documentation comment.
  1.6832 +
  1.6833 +2006-12-31  Masatake YAMATO  <jet@gyve.org>
  1.6834 +
  1.6835 +	* src/gxvalid/gxvkern.c (gxv_kern_subtable_fmt0_pairs_validate): New
  1.6836 +	function.
  1.6837 +	Check uniqueness of the gid pairs.
  1.6838 +	(gxv_kern_subtable_fmt0_validate): Move some code to
  1.6839 +	`gxv_kern_subtable_fmt0_pairs_validate'.
  1.6840 +
  1.6841 +2006-12-22  David Turner  <david@freetype.org>
  1.6842 +
  1.6843 +	* src/autofit/aflatin.c, src/truetype/ttgload.c: Remove compiler
  1.6844 +	warnings.
  1.6845 +
  1.6846 +	* builds/win32/visualc/freetype.vcproj: Add _CRT_SECURE_NO_DEPRECATE
  1.6847 +	to avoid deprecation warnings with Visual C++ 8.
  1.6848 +
  1.6849 +2006-12-16  Anders Kaseorg  <anders@kaseorg.com>
  1.6850 +
  1.6851 +	* src/base/ftlcdfil.c (FT_Library_SetLcdFilter)
  1.6852 +	[FT_FORCE_LIGHT_LCD_FILTER]: Fix typo.
  1.6853 +
  1.6854 +2006-12-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6855 +
  1.6856 +	* include/freetype/internal/services/svotval.h: Add `volatile' to
  1.6857 +	sync with the modification by Jens Claudius on 2006-08-22; cf.
  1.6858 +	  http://cvs.savannah.gnu.org/viewcvs/freetype/freetype2/src/otvalid/otvmod.c?r1=1.4&r2=1.5
  1.6859 +
  1.6860 +2006-12-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6861 +
  1.6862 +	* src/base/ftmac.c: Specialized for Mac OS X only.
  1.6863 +	* builds/unix/ftconfig.in: Fixed for ppc64 missing Carbon framework.
  1.6864 +	* builds/unix/configure.raw: Ditto.  When explicit switches for
  1.6865 +	FSSpec/FSRef/QuickDraw/ATS availability are given to configure,
  1.6866 +	builds/mac/ftmac.c is used instead of default src/base/ftmac.c.
  1.6867 +
  1.6868 +2006-12-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6869 +
  1.6870 +	* builds/mac/ftmac.c: Copied src/base/ftmac.c for legacy system.
  1.6871 +	* builds/mac/FreeType.m68k_cfm.make.txt: Fix to use builds/mac/ftmac.c
  1.6872 +	instead of src/base/ftmac.c
  1.6873 +	* builds/mac/FreeType.ppc_carbon.make.txt: Ditto.
  1.6874 +	* builds/mac/FreeType.ppc_classic.make.txt: Ditto.
  1.6875 +	* builds/mac/FreeType.m68k_far.make.txt: Ditto, and exclude gxvalid.c
  1.6876 +	that cannot be built at present.
  1.6877 +
  1.6878 +2006-12-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.6879 +
  1.6880 +	* src/base/ftobjs.c: Improvement of resource fork handler for
  1.6881 +	POSIX, cf.
  1.6882 +	  http://lists.gnu.org/archive/html/freetype-devel/2006-10/msg00025.html
  1.6883 +	(Mac_Read_sfnt_Resource): Count only `sfnt' resource of suitcase font
  1.6884 +	format or .dfont, to simulate the face index number counted by ftmac.c.
  1.6885 +	(IsMacResource): Return the number of scalable faces correctly.
  1.6886 +
  1.6887 +2006-12-10  Werner Lemberg  <wl@gnu.org>
  1.6888 +
  1.6889 +	* builds/toplevel.mk (version): Protect against `distclean' target.
  1.6890 +
  1.6891 +2006-12-09  Werner Lemberg  <wl@gnu.org>
  1.6892 +
  1.6893 +	* builds/*/*def.mk, builds/*/detect.mk (CAT): Define to either `cat'
  1.6894 +	or `type'.
  1.6895 +
  1.6896 +	* builds/freetype.mk (version): Extracted from freetype.h, using
  1.6897 +	GNU make's built-in string functions.
  1.6898 +	(refdoc): Use $(version) instead of static version number.
  1.6899 +
  1.6900 +2006-12-08  Werner Lemberg  <wl@gnu.org>
  1.6901 +
  1.6902 +	* builds/toplevel.mk (dist): Extract version number from freetype.h.
  1.6903 +
  1.6904 +2006-12-08  Vladimir Volovich  <vvv@vsu.ru>
  1.6905 +
  1.6906 +	* src/tools/apinames.c (State): Remove final comma in structure --
  1.6907 +	xlc v5 under AIX 4.3 doesn't like this.
  1.6908 +
  1.6909 +2006-12-07  David Turner  <david@freetype.org>
  1.6910 +
  1.6911 +	* src/autofit/afloader.c (af_loader_load_g): Small adjustment
  1.6912 +	to the spacing of auto-fitted glyphs.  This only impacts rare
  1.6913 +	cases (e.g., Arial Bold at rather small character sizes).
  1.6914 +
  1.6915 +2006-12-03  Werner Lemberg  <wl@gnu.org>
  1.6916 +
  1.6917 +	* src/sfnt/rules.mk (SFNT_DRV_SRC): Add ttsbit0.c.
  1.6918 +
  1.6919 +2006-12-01  Werner Lemberg  <wl@gnu.org>
  1.6920 +
  1.6921 +	* src/sfnt/sfobjs.c (tt_face_get_name): All Unicode strings are
  1.6922 +	encoded in UTF-16BE.  Patch from Rajeev Pahuja <rpahuja@esri.com>.
  1.6923 +	(tt_name_entry_ascii_from_ucs4): Removed.
  1.6924 +
  1.6925 +
  1.6926 +	* include/freetype/ftxf86.h: Fix and extend comment so that it
  1.6927 +	appears in the documentation.
  1.6928 +
  1.6929 +	* include/freetype/ftchapters.h: Add `font_format' section.
  1.6930 +
  1.6931 +
  1.6932 +	* src/tools/docmaker/tohtml.py (HtmlFormatter::index_exit): Add link
  1.6933 +	to TOC in index page.
  1.6934 +
  1.6935 +2006-11-28  David Turner  <david@freetype.org>
  1.6936 +
  1.6937 +	* src/smooth/ftgrays.c (gray_raster_render): Return 0 when we are
  1.6938 +	trying to render into a zero-width/height bitmap, not an error code.
  1.6939 +
  1.6940 +	* src/truetype/ttobjs.c (tt_face_init): Fix typo in previous patch.
  1.6941 +
  1.6942 +	* src/smooth/ftgrays.c: Remove hard-coded error values; use FreeType
  1.6943 +	ones instead.
  1.6944 +
  1.6945 +	* src/autofit/afhints.c (af_glyph_hints_dump_segments): Remove unused
  1.6946 +	variable.
  1.6947 +
  1.6948 +2006-11-26  Pierre Hanser  <hanser@club-internet.fr>
  1.6949 +
  1.6950 +	* src/truetype/ttobjs.c (tt_face_init): Protect against NULL pointer.
  1.6951 +
  1.6952 +2006-11-25  David Turner  <david@freetype.org>
  1.6953 +
  1.6954 +	* src/autofit/afhints.c	(af_glyph_hints_dump_points,
  1.6955 +	af_glyph_hints_dump_segments, af_glyph_hints_dumpedges) [!AF_DEBUG]:
  1.6956 +	Add stubs to link the `ftgrid' test program when debugging is
  1.6957 +	disabled in the auto-hinter.
  1.6958 +
  1.6959 +2006-11-23  David Turner  <david@freetype.org>
  1.6960 +
  1.6961 +	* src/autofit/afhints.c, src/autofit/afhints.h, src/autofit/aflatin.c,
  1.6962 +	src/autofit/aftypes.h: Miscellaneous auto-hinter improvements.
  1.6963 +
  1.6964 +	* src/autofit/afhints.c (af_glyph_hints_dump_segments) [AF_DEBUG]:
  1.6965 +	Emit more sensible information.
  1.6966 +
  1.6967 +	* src/autofit/afhints.h (AF_SegmentRec): Add `height' member.
  1.6968 +
  1.6969 +	* src/autofit/aflatin.c (af_latin_metrics_scale_dim): Improve
  1.6970 +	rounding of blue values.
  1.6971 +	(af_latin_hints_compute_segments): Hint segment heights.
  1.6972 +	(af_latin_hints_link_segments): Reduce `len_score' value.
  1.6973 +	(af_latin_hints_compute_edges): Increase `segment_length_threshold'
  1.6974 +	value and use `height' member for comparisons.
  1.6975 +	(af_latin_hint_edges): Extend logging message.
  1.6976 +	Improve handling of remaining edges.
  1.6977 +
  1.6978 +2006-11-22  Werner Lemberg  <wl@gnu.org>
  1.6979 +
  1.6980 +	Fix Savannah bug #15553.
  1.6981 +
  1.6982 +	* src/truetype/ttgload.c (tt_loader_init): Re-execute the CVT
  1.6983 +	program after a change from mono to grayscaling (and vice versa).
  1.6984 +	Use correct constant for comparison to get `exec->grayscale'.
  1.6985 +
  1.6986 +2006-11-18  Werner Lemberg  <wl@gnu.org>
  1.6987 +
  1.6988 +	Because FT_Load_Glyph expects CID values for CID-keyed fonts, the
  1.6989 +	test for a valid glyph index must be deferred to the font drivers.
  1.6990 +	This patch fixes Savannah bug #18301.
  1.6991 +
  1.6992 +	* src/base/ftobjs.c (FT_Load_Glyph): Don't check `glyph_index'.
  1.6993 +	* src/bdf/bdfdrivr.c (BDF_Glyph_Load), src/cff/cffgload.c
  1.6994 +	(cff_slot_load), src/cid/cidgload.c (cid_slot_load_glyph),
  1.6995 +	src/pcf/pcfdrivr.c (PCF_Glyph_Load), src/pfr/pfrobjs.c
  1.6996 +	(pfr_slot_load), src/truetype/ttdriver.c (Load_Glyph),
  1.6997 +	src/type1/t1gload.c (T1_Load_Glyph), src/winfonts/winfnt.c
  1.6998 +	(FNT_Load_Glyph): Check validity of `glyph_index'.
  1.6999 +
  1.7000 +2006-11-13  David Turner  <david@freetype.org>
  1.7001 +
  1.7002 +	* src/truetype/ttinterp.c (FIX_BYTECODE): Undefine.  The interpreter
  1.7003 +	`enhancements' are still too buggy for general use.
  1.7004 +
  1.7005 +	* src/base/ftlcdfil.c: Add support for FT_FORCE_LIGHT_LCD_FILTER and
  1.7006 +	FT_FORCE_LEGACY_LCD_FILTER at compile time.  Define these macros
  1.7007 +	when building the library to change the default LCD filter to be
  1.7008 +	used.  This is only useful for experimentation.
  1.7009 +
  1.7010 +	* include/freetype/ftlcdfil.h: Update documentation.
  1.7011 +
  1.7012 +2006-11-10  David Turner  <david@freetype.org>
  1.7013 +
  1.7014 +	* src/smooth/ftsmooth.c: API change for the LCD
  1.7015 +	filter.  The FT_LcdFilter value is an enumeration describing which
  1.7016 +	filter to apply, with new values FT_LCD_FILTER_LIGHT and
  1.7017 +	FT_LCD_FILTER_LEGACY (the latter implements the LibXft original
  1.7018 +	algorithm which produces strong color fringes for everything
  1.7019 +	except very-well hinted text).
  1.7020 +
  1.7021 +	* include/freetype/ftlcdfil.h (FT_Library_SetLcdFilter): Change
  1.7022 +	second parameter to an enum type.
  1.7023 +
  1.7024 +	* src/base/ftlcdfil.c (USE_LEGACY): Define.
  1.7025 +	(_ft_lcd_filter): Rename to...
  1.7026 +	(_ft_lcd_filter_fir): This.
  1.7027 +	Update parameters.
  1.7028 +	(_ft_lcd_filter_legacy) [USE_LEGACY]: New filter function.
  1.7029 +	(FT_Library_Set_LcdFilter): Update parameters.
  1.7030 +	Handle new filter modes.
  1.7031 +
  1.7032 +	* include/internal/ftobjs.h: Include FT_LCD_FILTER_H.
  1.7033 +	(FT_Bitmap_LcdFilterFunc): Change third argument to `FT_Library'.
  1.7034 +	(FT_LibraryRec) [FT_CONFIG_OPTION_SUBPIXEL_RENDERING]: Add filtering
  1.7035 +	callback and update other fields.
  1.7036 +
  1.7037 +	* src/smooth/ftsmooth.c (ft_smooth_render_generic)
  1.7038 +	[FT_CONFIG_OPTION_SUBPIXEL_RENDERING]: Update.
  1.7039 +	Other minor improvements.
  1.7040 +
  1.7041 +	* src/autofit/aflatin.c: Various tiny improvements that drastically
  1.7042 +	improve the handling of serif fonts and of LCD/LCD_V hinting modes.
  1.7043 +	(af_latin_hints_compute_edges): Fix typo.
  1.7044 +	(af_latin_compute_stem_width): Take better care of diagonal stems.
  1.7045 +
  1.7046 +2006-11-09  David Turner  <david@freetype.org>
  1.7047 +
  1.7048 +	* src/pshinter/pshalgo.c (psh_glyph_compute_inflections): Fix
  1.7049 +	typo which created a variable-used-before-initialized bug.
  1.7050 +
  1.7051 +2006-11-07  Zhe Su  <james.su@gmail.com>
  1.7052 +
  1.7053 +	* src/base/ftsynth.c (FT_GlyphSlot_Embolden): Handle vertical layout
  1.7054 +	also.
  1.7055 +
  1.7056 +2006-11-03  Werner Lemberg  <wl@gnu.org>
  1.7057 +
  1.7058 +	* src/base/ftcalc.c: Don't use `long long' but `FT_Int64'.
  1.7059 +
  1.7060 +2006-11-02  David Turner  <david@freetype.org>
  1.7061 +
  1.7062 +	Add a few tweaks to better handle serif fonts.
  1.7063 +	Add more debugging messages.
  1.7064 +
  1.7065 +	* src/autofit/aflatin.c (af_latin_hints_compute_edges): Ignore
  1.7066 +	segments that are less than 1.5 pixels high.  This gets rid of
  1.7067 +	*many* corner cases with serifs.
  1.7068 +	(af_latin_align_linked_edge): Add logging message.
  1.7069 +	(af_latin_hint_edges): Use AF_HINTS_DO_BLUES.
  1.7070 +	Add logging messages.
  1.7071 +	Handle AF_EDGE_FLAG flag specially.
  1.7072 +
  1.7073 +	* src/autofit/afmodule.c [AF_DEBUG]: Add _af_debug,
  1.7074 +	_af_debug_disable_blue_hints, and _af_debug_hints variables.
  1.7075 +
  1.7076 +	* src/autofit/aftypes.h (AF_LOG) [AF_DEBUG]: Use _af_debug.
  1.7077 +	Update external declarations.
  1.7078 +	(af_corner_orientation, af_corner_is_flat): Replaced by...
  1.7079 +
  1.7080 +	* include/freetype/internal/ftcalc.h (ft_corner_orientation,
  1.7081 +	ft_corner_is_flat): These declarations.
  1.7082 +
  1.7083 +	* src/autofit/afangles.c (af_corner_orientation, af_corner_is_flat):
  1.7084 +	Comment out.  Replaced by...
  1.7085 +
  1.7086 +	* src/base/ftcalc.h (ft_corner_orientation, ft_corner_is_flat):
  1.7087 +	These functions.  Update all callers.
  1.7088 +	(FT_Add64) [!FT_LONG64]: Simplify.
  1.7089 +
  1.7090 +	* src/autofit/afhints.c: Include FT_INTERNAL_CALC_H.
  1.7091 +	(af_direction_compute): Add a missing FT_ABS call.  This bug caused
  1.7092 +	production of garbage by missing lots of segments.
  1.7093 +
  1.7094 +	* src/autofit/afhints.h (AF_HINTS_DO_BLUES): New macro.
  1.7095 +
  1.7096 +	* src/autofit/afloader.c (af_loader_init, af_loader_done)
  1.7097 +	[AF_DEBUG]: Set _af_debug_hints.
  1.7098 +
  1.7099 +
  1.7100 +	* src/pshinter/pshalgo.c: Include FT_INTERNAL_CALC_H.
  1.7101 +	(psh_corner_is_flat, psh_corner_orientation): Use ft_corner_is_flat
  1.7102 +	and ft_corner_orientation.
  1.7103 +
  1.7104 +
  1.7105 +	* src/gzip/inftrees.c (huft_build): Remove compiler warning.
  1.7106 +
  1.7107 +2006-10-24  Werner Lemberg  <wl@gnu.org>
  1.7108 +
  1.7109 +	* src/cff/cffload.c (cff_encoding_load): Remove unused variable.
  1.7110 +
  1.7111 +	* src/base/ftobjs.c (FT_Select_Charmap): Disallow FT_ENCODING_NONE
  1.7112 +	as argument.
  1.7113 +
  1.7114 +2006-10-23  Zhe Su  <zsu@novell.com>
  1.7115 +
  1.7116 +	* src/base/ftoutln.c (FT_Outline_Get_Orientation): Re-implement to
  1.7117 +	better deal with broken Asian fonts with strange glyphs, having
  1.7118 +	self-intersections and other peculiarities.  The used algorithm is
  1.7119 +	based on the nonzero winding rule.
  1.7120 +
  1.7121 +2006-10-23  David Turner  <david@freetype.org>
  1.7122 +
  1.7123 +	Speed up the CFF font loader.  With some large CFF fonts,
  1.7124 +	FT_Open_Face is now more than three times faster.
  1.7125 +
  1.7126 +	* src/cff/cffload.c (cff_get_offset): Removed.
  1.7127 +	(cff_new_index): Inline functionality of `cff_get_offset'.
  1.7128 +	(cff_charset_compute_cids, cff_charset_free_cids): New functions.
  1.7129 +	(cff_charset_done): Call `cff_charset_free_cids'.
  1.7130 +	(cff_charset_load): Call `cff_charset_compute_cids'.
  1.7131 +	(cff_encoding_load) <Populate>: Ditto, to replace inefficient loop.
  1.7132 +
  1.7133 +	* src/sfnt/ttmtx.c (tt_face_load_hmtx): Replace calls to FT_GET_XXX
  1.7134 +	with FT_NEXT_XXX.
  1.7135 +
  1.7136 +
  1.7137 +	Speed up the Postscript hinter, with more than 100% speed increase
  1.7138 +	on my machine.
  1.7139 +
  1.7140 +	* src/pshinter/pshalgo.c (psh_corner_is_flat,
  1.7141 +	psh_corner_orientation): New functions.
  1.7142 +	(psh_glyph_compute_inflections): Merge loops for efficiency.
  1.7143 +	Use `psh_corner_orientation'.
  1.7144 +	(psh_glyph_init): Use `psh_corner_is_flat'.
  1.7145 +	(psh_hint_table_find_strong_point): Renamed to...
  1.7146 +	(psh_hint_table_find_strong_points): This.
  1.7147 +	Rewrite, adding argument to handle all points at once.
  1.7148 +	Update all callers.
  1.7149 +	(PSH_MAX_STRONG_INTERNAL): New macro.
  1.7150 +	(psh_glyph_interpolate_normal_points): Rewrite for efficiency.
  1.7151 +
  1.7152 +2006-10-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.7153 +
  1.7154 +	* src/base/ftmac.c (FT_New_Face_From_FOND): Initialize variable
  1.7155 +	`error' with FT_Err_Ok.
  1.7156 +
  1.7157 +2006-10-14  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.7158 +
  1.7159 +	* docs/INSTALL.CROSS: New document file for cross-building.
  1.7160 +
  1.7161 +	* builds/unix/configure.raw: Preliminary cross-building support.
  1.7162 +	Find native C compiler and pass it by CC_BUILD, and
  1.7163 +	find suffix for native executable and pass it by EXEEXT_BUILD.
  1.7164 +	Also suffix for target executable is passed by EXEEXT.
  1.7165 +
  1.7166 +	* builds/unix/unix-cc.in (CCraw_build, E_BUILD): New variables to
  1.7167 +	build `apinames' which runs on building system.  They are set by
  1.7168 +	CC_BUILD and EXEEXT_BUILD.
  1.7169 +
  1.7170 +	* builds/exports.mk (APINAMES_EXE): Change the extension for
  1.7171 +	apinames from the suffix for target (E) to that for building host
  1.7172 +	(E_BUILD).
  1.7173 +
  1.7174 +2006-10-12  Werner Lemberg  <wl@gnu.org>
  1.7175 +
  1.7176 +	* docs/INSTALL.UNX, docs/UPGRADE.UNX: Renamed to...
  1.7177 +	* docs/INSTALL.UNIX, docs/UPGRADE.UNIX: This.  Update all documents
  1.7178 +	which reference those files.
  1.7179 +
  1.7180 +2006-10-12  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.7181 +
  1.7182 +	* builds/unix/configure.raw (FT2_EXTRA_LIBS): New variable.  It is
  1.7183 +	embedded in freetype2.pc and freetype-config.  Use it to record
  1.7184 +	Carbon dependency of MacOSX.
  1.7185 +
  1.7186 +	* builds/unix/freetype2.in: Embed FT2_EXTRA_LIBS.
  1.7187 +
  1.7188 +	* builds/unix/freetype-config.in: Ditto.
  1.7189 +
  1.7190 +2006-10-11  Werner Lemberg  <wl@gnu.org>
  1.7191 +
  1.7192 +	* devel/ftoption.h (FT_CONFIG_OPTION_SUBPIXEL_RENDERING): Define for
  1.7193 +	development.
  1.7194 +
  1.7195 +2006-10-03  Jens Claudius  <jens.claudius@yahoo.com>
  1.7196 +
  1.7197 +	* include/freetype/config/ftstdlib.h: Cast away volatileness from
  1.7198 +	argument to ft_setjmp.
  1.7199 +
  1.7200 +	* include/freetype/internal/ftvalid.h: Add comment that
  1.7201 +	ft_validator_run must not be used.
  1.7202 +
  1.7203 +2006-10-01  Werner Lemberg  <wl@gnu.org>
  1.7204 +
  1.7205 +	* src/base/ftbase.c: Undo change from 2006-09-30.
  1.7206 +
  1.7207 +	* src/base/rules.mk (BASE_SRC): Remove `ftlcdfil.c'.
  1.7208 +
  1.7209 +2006-09-30  David Turner  <david@freetype.org>
  1.7210 +
  1.7211 +	* include/freetype/internal/ftobjs.h (FT_Face_InternalRec):
  1.7212 +	s/unpatented_hinting/ignore_unpatented_hinter/.
  1.7213 +	Update all callers.
  1.7214 +
  1.7215 +	* src/base/ftobjs.c (FT_Load_Glyph): Refine the algorithm whether
  1.7216 +	auto-hinting shall be used or not.
  1.7217 +
  1.7218 +	* src/truetype/ttobjs.c (tt_face_init): Ditto.
  1.7219 +
  1.7220 +2006-09-30  Werner Lemberg  <wl@gnu.org>
  1.7221 +
  1.7222 +	* src/base/rules.mk (BASE_SRC): Remove `ftapi.c' (which is no longer
  1.7223 +	in use).
  1.7224 +
  1.7225 +	* src/base/ftbase.c: Include `ftlcdfil.c'.
  1.7226 +
  1.7227 +2006-09-29  Werner Lemberg  <wl@gnu.org>
  1.7228 +
  1.7229 +	* src/sfnt/ttcmap.c (tt_cmap4_char_map_binary): Fix algorithm for
  1.7230 +	overlapping segments.  Bug reported by Stefan Koch.
  1.7231 +
  1.7232 +2006-09-28  David Turner  <david@freetype.org>
  1.7233 +
  1.7234 +	Fix a bug in the automatic unpatented hinting support which prevents
  1.7235 +	normal bytecode hinting to work properly.
  1.7236 +
  1.7237 +	* include/freetype/internal/ftobjs.h (FT_Face_InternalRec):
  1.7238 +	s/force_autohint/unpatented_hinting/.  Update all callers.
  1.7239 +
  1.7240 +	* src/base/ftobjs.c (FT_Load_Glyph): Updated code.
  1.7241 +
  1.7242 +	* src/autofit/aftypes.h (AF_DEBUG): Undefine to get rid of traces.
  1.7243 +
  1.7244 +2006-09-27  David Turner  <david@freetype.org>
  1.7245 +
  1.7246 +	* include/freetype/freetype.h (FT_FREETYPE_PATCH): Set to 2.
  1.7247 +
  1.7248 +
  1.7249 +	Add a new API to support color filtering of subpixel glyph bitmaps.
  1.7250 +	In a default build, the function `FT_Library_SetLcdFilter' returns
  1.7251 +	`FT_Err_Unimplemented_Feature'; you need to #define
  1.7252 +	FT_CONFIG_OPTION_SUBPIXEL_RENDERING in ftoption.h to compile the
  1.7253 +	real implementation.
  1.7254 +
  1.7255 +	* include/freetype/ftlcdfil.h, src/base/ftlcdfil.c: New files.
  1.7256 +
  1.7257 +	* include/freetype/internal/ftobjs.h (FT_Bitmap_LcdFilterFunc): New
  1.7258 +	typedef.
  1.7259 +	(FT_LibraryRec) [FT_CONFIG_OPTION_SUBPIXEL_RENDERING]: New members
  1.7260 +	`lcd_filter_weights' and `lcd_filter'.
  1.7261 +
  1.7262 +	* src/smooth/ftsmooth.c (ft_smooth_render_generic): Remove arguments
  1.7263 +	`hmul' and `vmul'.
  1.7264 +
  1.7265 +	Handle subpixel rendering.
  1.7266 +	Simplify function.
  1.7267 +	(ft_smooth_render_lcd): Use `FT_RENDER_MODE_LCD'.
  1.7268 +	(ft_smooth_render_lcd_v): Use `FT_RENDER_MODE_LCD_V'.
  1.7269 +
  1.7270 +	* include/freetype/config/ftheader.h (FT_LCD_FILTER_H): New macro,
  1.7271 +	pointing to <freetype/ftlcdfil.h>.
  1.7272 +
  1.7273 +	* src/base/Jamfile (_sources), src/base/rules.mk (BASE_SRC),
  1.7274 +	vms_make.com: Add `ftlcdfil.c' to the list of compiled source files.
  1.7275 +
  1.7276 +	* modules.cfg (BASE_EXTENSIONS): Add ftlcdfil.c.
  1.7277 +
  1.7278 +2006-09-26  David Bustin
  1.7279 +
  1.7280 +	* src/pfr/pfrobjs.c (pfr_face_get_kerning): Skip adjustment bytes
  1.7281 +	correctly.  Reported as Savannah bug #17843.
  1.7282 +
  1.7283 +2006-09-26  David Turner  <david@freetype.org>
  1.7284 +
  1.7285 +	* src/autofit/afhints.h (AF_HINTS_DO_HORIZONTAL,
  1.7286 +	AF_HINTS_DO_VERTICAL, AF_HINTS_DO_ADVANCE): New macros to disable
  1.7287 +	horizontal and vertical hinting for the purpose of debugging the
  1.7288 +	auto-fitter.
  1.7289 +
  1.7290 +	* src/autofit/afmodule.c (_af_debug_disable_horz_hints,
  1.7291 +	_af_debug_disable_vert_hints) [AF_DEBUG]: New global variables.
  1.7292 +
  1.7293 +	* src/autofit/aftypes.h [AF_DEBUG]: Declare above variables.
  1.7294 +
  1.7295 +	* include/freetype/config/ftoption.h, devel/ftoption.h
  1.7296 +	(FT_CONFIG_OPTION_SUBPIXEL_RENDERING): New macro to control whether
  1.7297 +	we want to compile LCD-optimized rendering code (à la ClearType) or
  1.7298 +	not.  The macro *must* be disabled in default builds of the library
  1.7299 +	for patent reasons.
  1.7300 +
  1.7301 +	* src/smooth/ftsmooth.c (ft_smooth_render_generic): Disable
  1.7302 +	LCD-specific rendering when FT_CONFIG_OPTION_SUBPIXEL_RENDERING
  1.7303 +	isn't defined at compile time.  This only changes the content of the
  1.7304 +	rendered glyph to match the one of normal gray-level rendering,
  1.7305 +	hence clients should not need to be modified.
  1.7306 +
  1.7307 +	* docs/CHANGES: Updated.
  1.7308 +
  1.7309 +2006-09-18  Garrick Meeker  <garrick@digitalanarchy.com>
  1.7310 +
  1.7311 +	* src/base/ftmac.c (FT_New_Face_From_FOND): Fall back to SFNT if
  1.7312 +	LWFN fails and both are available.
  1.7313 +
  1.7314 +2006-09-11  David Turner  <david@freetype.org>
  1.7315 +
  1.7316 +	* src/sfnt/sfobjs.c (tt_face_get_name): Support some fonts which
  1.7317 +	report their English names through an Apple Roman
  1.7318 +	(platform,encoding) pair, with language_id != English.
  1.7319 +
  1.7320 +	If the font uses another name entry with language_id == English, it
  1.7321 +	will be selected correctly, though.
  1.7322 +
  1.7323 +	* src/truetype/ttobjs.c (tt_face_init): Add unpatented hinting
  1.7324 +	selection for `mingli.ttf'.
  1.7325 +
  1.7326 +2006-09-05  Werner Lemberg  <wl@gnu.org>
  1.7327 +
  1.7328 +	* src/truetype/ttpload.c (tt_face_load_hdmx): Handle `record_size'
  1.7329 +	values which have the upper two bytes set to 0xFF instead of 0x00
  1.7330 +	(as it happens in at least two CJKV fonts, `HAN NOM A.ttf' and
  1.7331 +	`HAN NOM B.ttf').
  1.7332 +
  1.7333 +	* src/smooth/ftgrays.c [GRAYS_USE_GAMMA]: Really remove all code.
  1.7334 +
  1.7335 +2006-09-05  David Turner  <david@freetype.org>
  1.7336 +
  1.7337 +	Minor source cleanups and optimizations.
  1.7338 +
  1.7339 +	* src/smooth/ftgrays.c (GRAYS_COMPACT): Removed.
  1.7340 +	(TRaster): Remove `count_ex' and `count_ey'.
  1.7341 +	(gray_find_cell): Remove 2nd and 3rd argument.
  1.7342 +	(gray_alloc_cell): Merged with `gray_find_cell'.
  1.7343 +	(gray_record_cell): Simplify.
  1.7344 +	(gray_set_cell): Rewrite.
  1.7345 +	(gray_start_cell): Apply offsets to `ras.ex' and `ras.ey'.
  1.7346 +	(gray_render_span): Don't use FT_MEM_SET for small values.
  1.7347 +	(gray_dump_cells) [DEBUG_GRAYS]: New function.
  1.7348 +	(gray_sweep): Avoid buffer overwrites when to drawing the end of a
  1.7349 +	bitmap scanline.
  1.7350 +	(gray_convert_glyph): Fix speed-up.
  1.7351 +
  1.7352 +2006-09-04  David Turner  <david@freetype.org>
  1.7353 +
  1.7354 +	* src/smooth/ftgrays.c (gray_convert_glyphs): Make it work with
  1.7355 +	64bit processors.
  1.7356 +
  1.7357 +2006-09-03  Werner Lemberg  <wl@gnu.org>
  1.7358 +
  1.7359 +	* devel/ftoption.h: Synchronize with
  1.7360 +	include/freetype/config/ftoption.h.
  1.7361 +
  1.7362 +	* src/smooth/ftgrays.c (gray_record_cell): Remove shadowing
  1.7363 +	variable declaration.
  1.7364 +	(gray_convert_glyph): Fix compiler warnings.
  1.7365 +
  1.7366 +2006-09-01  David Turner  <david@freetype.org>
  1.7367 +
  1.7368 +	* src/truetype/ttobjs.c (tt_face_init): Update the TrueType loader
  1.7369 +	to recognize a few fonts that require the automatic unpatented
  1.7370 +	loader.
  1.7371 +
  1.7372 +	* src/smooth/ftgrays.c: Optmize the performance of the anti-aliased
  1.7373 +	rasterizer.  The speed improvement is between 15% and 25%, depending
  1.7374 +	on the font data.
  1.7375 +
  1.7376 +	(GRAYS_USE_GAMMA, GRAYS_COMPACT): Removed, and all associated code.
  1.7377 +	(TCell): Redefine.
  1.7378 +	(TRaster): New members `buffer', `buffer_size', `ycells', `ycount'.
  1.7379 +	(gray_init_cells): Updated.
  1.7380 +	(gray_find_cell, gray_alloc_cell): New functions.
  1.7381 +	(gray_record_cell): Rewritten to use `gray_find_cell' and
  1.7382 +	`gray_alloc_cell'.
  1.7383 +	(PACK, LESS_THAN, SWAP_CELLS, DEBUG_SORT, QUICK_SORT, SHELL_SORT,
  1.7384 +	QSORT_THRESHOLD):
  1.7385 +	Removed.
  1.7386 +	(gray_shell_sort, gray_quick_sort, gray_check_sort,
  1.7387 +	gray_dump_cells): Removed.
  1.7388 +	(gray_sweep): Rewritten.
  1.7389 +	(gray_convert_glyph): Rewrite code which used one of the sorting
  1.7390 +	functions.
  1.7391 +	(gray_raster_render): Updated.
  1.7392 +
  1.7393 +2006-08-29  Dr. Werner Fink  <werner@suse.de>
  1.7394 +
  1.7395 +	* configure: Make it possible to handle configure options which
  1.7396 +	have strings containing spaces.
  1.7397 +
  1.7398 +2006-08-27  David Turner  <david@freetype.org>
  1.7399 +
  1.7400 +	* include/freetype/config/ftoption.h (TT_USE_BYTECODE_INTERPRETER):
  1.7401 +	New macro, defined if either TT_CONFIG_OPTION_BYTECODE_INTERPRETER
  1.7402 +	or TT_CONFIG_OPTION_UNPATENTED_HINTING is defined.
  1.7403 +
  1.7404 +	* include/freetype/internal/ftcalc.h, src/base/ftcalc.c,
  1.7405 +	src/truetype/truetype.c, src/truetype/ttdriver.c,
  1.7406 +	src/truetype/ttgload.c, src/truetype/ttgload.h,
  1.7407 +	src/truetype/ttinterp.c, src/truetype/ttobjs.c,
  1.7408 +	src/truetype/ttobjs.h, src/truetype/ttpload.c, src/type42/t42drivr.c:
  1.7409 +	s/TT_CONFIG_OPTION_BYTECODE_INTERPRETER/TT_USE_BYTECODE_INTERPRETER/.
  1.7410 +
  1.7411 +	* include/freetype/internal/ftobjs.h (FT_Face_InternalRec): New
  1.7412 +	member `force_autohint'.
  1.7413 +
  1.7414 +	* src/base/ftobjs.c (FT_Load_Glyph): Use `force_autohint'.
  1.7415 +
  1.7416 +	* src/truetype/ttobjs.c (tt_face_init): Prepare code for testing
  1.7417 +	against a list of font names which need the bytecode interpreter.
  1.7418 +
  1.7419 +2006-08-27  Jens Claudius  <jens.claudius@yahoo.com>
  1.7420 +
  1.7421 +	Fix miscellaneous compiler warnings.
  1.7422 +
  1.7423 +	* include/freetype/internal/ftobjs.h: Close comment with `*/' to
  1.7424 +	avoid `/* in comment' compiler warning.
  1.7425 +
  1.7426 +	* src/base/ftdbgmem.c (ft_mem_table_get_source): Turn cast
  1.7427 +	`(FT_UInt32)(void*)' into `(FT_UInt32)(FT_PtrDist)(void*)' since on
  1.7428 +	64-bit platforms void* is larger than FT_UInt32.
  1.7429 +
  1.7430 +	* src/base/ftobjs.c (t_validator_error): Cast away
  1.7431 +	volatileness of argument to ft_longjmp.  Spotted by Werner
  1.7432 +	`Putzfrau' Lemberg.
  1.7433 +
  1.7434 +	* src/bdf/bdflib.c (bdf_load_font): Initialize local
  1.7435 +	variable `lineno'.
  1.7436 +
  1.7437 +	* src/gxvalid/gxvmod.c (classic_kern_validate): Mark local variable
  1.7438 +	`error' as volatile.
  1.7439 +
  1.7440 +2006-08-27  Werner Lemberg  <wl@gnu.org>
  1.7441 +
  1.7442 +	* builds/unix/ftconfig.in: Synchronize with main ftconfig.h.
  1.7443 +	Reported by Jens.
  1.7444 +
  1.7445 +2006-08-22  Jens Claudius  <jens.claudius@yahoo.com>
  1.7446 +
  1.7447 +	Fix for previous commit, which caused many compiler warnings/errors
  1.7448 +	about addresses of volatile objects passed as function arguments as
  1.7449 +	non-volatile pointers.
  1.7450 +
  1.7451 +	* include/freetype/internal/ftvalid.h: Make FT_Validator typedef a
  1.7452 +	pointer to a volatile object.
  1.7453 +
  1.7454 +	* src/gxvalid/gxvmod.c (gxv_load_table): Make function argument
  1.7455 +	`table' a pointer to a volatile object.
  1.7456 +
  1.7457 +	* src/otvalid/otvmod.c (otv_load_table): Make function argument
  1.7458 +	`table' a pointer to a volatile object.
  1.7459 +
  1.7460 +2006-08-18  Jens Claudius  <jens.claudius@yahoo.com>
  1.7461 +
  1.7462 +	* src/gxvalid/gxvmod.c (GXV_TABLE_DECL): Mark local variable `_sfnt'
  1.7463 +	as volatile since it must keep its value across a call to ft_setjmp.
  1.7464 +	(gxv_validate): Same for local variables `memory' and `valid'.
  1.7465 +	(classic_kern_validate): Same for local variables `memory',
  1.7466 +	`ckern', and `valid'.
  1.7467 +
  1.7468 +	* src/otvalid/otvmod.c (otv_validate): Same for function parameter
  1.7469 +	`face' and local variables `base', `gdef', `gpos', `gsub', `jstf',
  1.7470 +	and 'valid'.
  1.7471 +
  1.7472 +	* src/sfnt/ttcmap.c (tt_face_build_cmaps): Same for local variable
  1.7473 +	`cmap'.
  1.7474 +
  1.7475 +2006-08-16  David Turner  <david@freetype.org>
  1.7476 +
  1.7477 +	* src/cid/cidgload.c (cid_slot_load_glyph): Remove compiler
  1.7478 +	warnings.
  1.7479 +
  1.7480 +	* src/base/ftobjs.c (ft_validator_run): Disable function; it is
  1.7481 +	buggy by design.  Always return -1.
  1.7482 +
  1.7483 +
  1.7484 +	Improvements to native TrueType hinting.  This is a first try,
  1.7485 +	controlled by the FIX_BYTECODE macro in src/truetype/ttinterp.c.
  1.7486 +
  1.7487 +	* include/freetype/internal/ftgloadr.h (FT_GlyphLoadRec): Add member
  1.7488 +	`extra_points2'.
  1.7489 +
  1.7490 +	* include/freetype/internal/tttypes.h (TT_GlyphZoneRec): Add member
  1.7491 +	`orus'.
  1.7492 +
  1.7493 +	* src/base/ftgloadr.c (FT_GlyphLoader_Reset,
  1.7494 +	FT_GlyphLoader_Adjust_Points, FT_GlyphLoader_CreateExtra,
  1.7495 +	FT_GlyphLoader_CheckPoints, FT_GlyphLoader_CopyPoints): Updated to
  1.7496 +	handle `extra_points2'.
  1.7497 +
  1.7498 +	* src/truetype/ttgload.c (tt_prepare_zone): Handle `orus'.
  1.7499 +	Remove compiler warning.
  1.7500 +	(cur_to_arg): Remove macro.
  1.7501 +	(TT_Hint_Glyph): Updated.
  1.7502 +	(TT_Process_Simple_Glyph): Handle `orus'.
  1.7503 +
  1.7504 +	* src/truetype/ttinterp.c (FIX_BYTECODE): New macro.
  1.7505 +	(Ins_MD, Ins_MDRP, Ins_IP) [FIX_BYTECODE]: Handle `orus'.
  1.7506 +	(LOC_Ins_IUP): Renamed to...
  1.7507 +	(IUP_WorkerRec): This.
  1.7508 +	Add `orus' member.
  1.7509 +	(Shift): Renamed to...
  1.7510 +	(_iup_worker_shift): This.
  1.7511 +	Updated.
  1.7512 +	(Interp): Renamed to...
  1.7513 +	(_iup_worker_interpolate): This.
  1.7514 +	Updated to handle `orus'.
  1.7515 +	(Ins_IUP): Updated.
  1.7516 +
  1.7517 +	* src/truetype/ttobjs.c (tt_glyphzone_done, tt_glyphzone_new):
  1.7518 +	Handle `orus'.
  1.7519 +
  1.7520 +2006-08-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.7521 +
  1.7522 +	* modules.cfg (BASE_EXTENSIONS): Compile in ftgxval.c by default to
  1.7523 +	build ftvalid in ft2demos.  This has been inadvertedly changed
  1.7524 +	2006-08-13.
  1.7525 +
  1.7526 +2006-08-15  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.7527 +
  1.7528 +	`ft_validator_run' wrapping `setjmp' can cause a crash, as found by
  1.7529 +	Jens:
  1.7530 +	http://lists.gnu.org/archive/html/freetype-devel/2006-08/msg00004.htm.
  1.7531 +
  1.7532 +	* src/otvalid/otvmod.c: Replace `ft_validator_run' by `ft_setjmp'.
  1.7533 +	It reverts the change introduced on 2005-08-20.
  1.7534 +
  1.7535 +	* src/gxvalid/gxvmod.c: Ditto.
  1.7536 +
  1.7537 +2006-08-13  Jens Claudius  <jens.claudius@yahoo.com>
  1.7538 +
  1.7539 +	* finclude/freetype/internal/psaux.h: (T1_TokenType): Add
  1.7540 +	T1_TOKEN_TYPE_KEY.
  1.7541 +	(T1_FieldRec): Add `dict'.
  1.7542 +	(T1_FIELD_DICT_FONTDICT, T1_FIELD_DICT_PRIVATE): New macros.
  1.7543 +	(T1_NEW_XXX, T1_FIELD_XXX): Update to take the dictionary where a PS
  1.7544 +	keyword is expected as an additional argument.
  1.7545 +
  1.7546 +	* src/cid/cidload.c: (cid_field_records): Adjust invocations of
  1.7547 +	T1_FIELD_XXX.
  1.7548 +
  1.7549 +	* src/cid/cidtoken.h: Adjust invocations of T1_FIELD_XXX.
  1.7550 +
  1.7551 +	* src/psaux/psobjs.c: Add macro FT_COMPONENT for tracing.
  1.7552 +	(ps_parser_to_token): Report a PostScript key as T1_TOKEN_TYPE_KEY,
  1.7553 +	not T1_TOKEN_TYPE_ANY.
  1.7554 +	(ps_parser_load_field): Make sure a token that should be a string or
  1.7555 +	name is really a string or name.
  1.7556 +	Avoid memory leak if a keyword has been already encountered and its
  1.7557 +	value is overwritten.
  1.7558 +	* src/type1/t1load.c: (t1_keywords): Adjust invocations of
  1.7559 +	T1_FIELD_XXX.
  1.7560 +	(parse_dict): Ignore keywords that occur in the wrong dictionary
  1.7561 +	(e.g., in `Private' instead of `FontDict').
  1.7562 +
  1.7563 +	* src/type1/t1tokens.h: Adjust invocations of T1_FIELD_XXX.
  1.7564 +
  1.7565 +	* src/type42/t42parse.c: (t42_keywords): Adjust invocations of
  1.7566 +	T1_FIELD_XXX.
  1.7567 +
  1.7568 +2006-07-18  Jens Claudius  <jens.claudius@yahoo.com>
  1.7569 +
  1.7570 +	Move creation of field `buildchar' of T1_DecoderRec out of
  1.7571 +	`t1_decoder_init' and let the caller of `t1_decoder_init' take care
  1.7572 +	of it.
  1.7573 +
  1.7574 +	Call the finisher for T1_Decoder in `cid_face_compute_max_advance'
  1.7575 +	and `T1_Compute_Max_Advance'.
  1.7576 +
  1.7577 +	* include/freetype/internal/psaux.h (T1_DecoderRec): Remove field
  1.7578 +	`face', add `len_buildchar'.
  1.7579 +
  1.7580 +	* include/freetype/internal/t1types.h (T1_FaceRec): Add field
  1.7581 +	`buildchar'.
  1.7582 +
  1.7583 +	* src/cid/cidgload.c (cid_face_compute_max_advance): Call finisher
  1.7584 +	for T1_Decoder.
  1.7585 +	(cid_slot_load_glyph): Do not ignore failure when initializing the
  1.7586 +	T1_Decoder.
  1.7587 +
  1.7588 +	* src/psaux/t1decode.c (t1_decoder_parse_charstrings): Updated.
  1.7589 +	(t1_decoder_init): Remove initialization of fields `buildchar' and
  1.7590 +	`len_buildchar'.
  1.7591 +	(t1_decoder_done): Remove deallocation of field `buildchar'.
  1.7592 +
  1.7593 +	* freetype/src/type1/t1gload.c (T1_Compute_Max_Advance): Initialize
  1.7594 +	T1_Decoder's `buildchar' and `len_buildchar'; call finisher for
  1.7595 +	T1_Decoder.
  1.7596 +	(T1_Load_Glyph): Initialize T1_Decoder's `buildchar' and
  1.7597 +	`len_buildchar'; make sure to call finisher for T1_Decoder even in
  1.7598 +	case of error.
  1.7599 +
  1.7600 +	* src/type1/t1load.c (T1_Open_Face): Allocate new field `buildchar'
  1.7601 +	of T1_FaceRec.
  1.7602 +
  1.7603 +	* src/type1/t1objs.c (T1_Face_Done): Free new field `buildchar' of
  1.7604 +	T1_FaceRec.
  1.7605 +
  1.7606 +2006-07-14  Jens Claudius  <jens.claudius@yahoo.com>
  1.7607 +
  1.7608 +	* include/freetype/internal/psaux.h: New macros IS_PS_NEWLINE,
  1.7609 +	IS_PS_SPACE, IS_PS_SPECIAL, IS_PS_DELIM, IS_PS_DIGIT, IS_PS_XDIGIT,
  1.7610 +	and IS_PS_BASE85 (from src/psaux/psconv.h).
  1.7611 +	(T1_FieldLocation): Add T1_FIELD_LOCATION_LOADER,
  1.7612 +	T1_FIELD_LOCATION_FACE, and T1_FIELD_LOCATION_BLEND.
  1.7613 +	(T1_DecoderRec): New fields `buildchar' and `face'.
  1.7614 +	(IS_PS_TOKEN): New macro.
  1.7615 +
  1.7616 +	* include/freetype/internal/t1types.h (T1_FaceRec): New fields
  1.7617 +	`ndv_idx', `cdv_idx', and `len_buildchar'.
  1.7618 +
  1.7619 +	* include/freetype/t1tables.h (PS_BlendRec): New fields
  1.7620 +	`default_design_vector' and `num_default_design_vector'.
  1.7621 +
  1.7622 +	* src/psaux/psconv.h: Move macros IS_PS_NEWLINE, IS_PS_SPACE,
  1.7623 +	IS_PS_SPECIAL, IS_PS_DELIM, IS_PS_DIGIT, IS_PS_XDIGIT, and
  1.7624 +	IS_PS_BASE85 to include/freetype/internal/psaux.h.
  1.7625 +
  1.7626 +	* src/psaux/psobjs.c (ps_parser_to_token_array): Allow `token'
  1.7627 +	argument to be NULL if we want only to count the number of tokens.
  1.7628 +	(ps_tocoordarray): Allow `coords' argument to be NULL if we just
  1.7629 +	want to skip the array.
  1.7630 +	(ps_tofixedarray): Allow `values' argument to be NULL if we just
  1.7631 +	want to skip the array.
  1.7632 +
  1.7633 +	* src/psaux/t1decode.c (t1_decoder_parse_charstrings): Add support
  1.7634 +	for (partially commented out) othersubrs 19-25, 27, and 28.
  1.7635 +	(t1_decoder_init): Initialize new fields `face' and `buildchar'.
  1.7636 +	(t1_decoder_done): Release new field `buildchar'.
  1.7637 +
  1.7638 +	* src/type1/t1load.c (parse_buildchar, parse_private): New
  1.7639 +	functions.
  1.7640 +	(t1_keywords): Register them.
  1.7641 +	(t1_allocate_blend): Updated.
  1.7642 +	(t1_load_keyword): Handle field types T1_FIELD_LOCATION_LOADER,
  1.7643 +	T1_FIELD_LOCATION_FACE and T1_FIELD_LOCATION_BLEND.
  1.7644 +	(parse_dict): Remove `keyword_flags' argument.
  1.7645 +	Use new macro IS_PS_TOKEN.
  1.7646 +	Changed function so that later PostScript definitions override
  1.7647 +	earlier ones.
  1.7648 +	(t1_init_loader): Initialize new field `keywords_encountered'.
  1.7649 +	(T1_Open_Face): Initialize new fields `ndv_idx', `cdv_idx', and
  1.7650 +	`len_buildchar'.
  1.7651 +	Remove `keywords_flags'.
  1.7652 +
  1.7653 +	* src/type1/t1load.h (T1_LoaderRect): New field
  1.7654 +	`keywords_encountered'.
  1.7655 +	(T1_PRIVATE, T1_FONTDIR_AFTER_PRIVATE): New macros.
  1.7656 +
  1.7657 +	* src/type1/t1tokens.h [!T1_CONFIG_OPTION_NO_MM_SUPPORT]: New
  1.7658 +	entries for parsing /NDV, /CDV, and /DesignVector.
  1.7659 +
  1.7660 +2006-07-07  Werner Lemberg  <wl@gnu.org>
  1.7661 +
  1.7662 +	Add many checks to protect against malformed PCF files.
  1.7663 +
  1.7664 +	* src/pcf/pcfdrivr.c (PCF_Face_Done): Protect against NULL pointers.
  1.7665 +	(PCF_Face_Init): Add calls to PCF_Face_Done in case of errors.
  1.7666 +
  1.7667 +	* src/pcf/pcfread.c (pcf_read_TOC): Protect against malformed table
  1.7668 +	data and check that tables don't overlap (using a simple
  1.7669 +	bubblesort).
  1.7670 +	(PCF_METRIC_SIZE, PCF_COMPRESSED_METRIC_SIZE, PCF_PROPERTY_SIZE):
  1.7671 +	New macros which give the size of data structures in the data
  1.7672 +	stream.
  1.7673 +	(pcf_get_properties): Use rough estimates to get array size limits.
  1.7674 +	Assign `face->nprops' and `face->properties' earlier so that a call
  1.7675 +	to PCF_Face_Done can do the clean-up in case of error.
  1.7676 +	Protect against invalid string offsets.
  1.7677 +	(pcf_get_metrics): Clean up code.
  1.7678 +	Adjust tracing message levels.
  1.7679 +	Use rough estimate to get array size limit.
  1.7680 +	(pcf_get_bitmaps): Clean up code.
  1.7681 +	Adjust tracing message levels.
  1.7682 +	Use rough estimates to get offset limits.
  1.7683 +	(pcf_get_encodings): Adjust tracing message level.
  1.7684 +	(pcf_get_accel): Clean up code.
  1.7685 +
  1.7686 +2006-06-26  Werner Lemberg  <wl@gnu.org>
  1.7687 +
  1.7688 +	* src/bdf/bdfdrivr.c (BDF_Face_Init): Handle fonts correctly which
  1.7689 +	don't have a POINT_SIZE property.  This fixes Savannah bug #16914.
  1.7690 +
  1.7691 +2006-06-26  Jens Claudius  <jens.claudius@yahoo.com>
  1.7692 +
  1.7693 +	* src/psaux/t1decode.c (T1_Operator, t1_args_count): Add opcode 15.
  1.7694 +	(t1_decoder_parse_charstrings): Operator with
  1.7695 +	opcode 15 pops its two arguments.
  1.7696 +	Handle the case where the pops of an othersubr may be part of a
  1.7697 +	subroutine.
  1.7698 +	Handle unknown othersubrs gracefully: count their operands and let
  1.7699 +	the following pop operators push the operands as the results onto
  1.7700 +	the Type1 stack.
  1.7701 +	Improve handling of setcurrentpoint opcode.
  1.7702 +
  1.7703 +2006-06-25  Jens Claudius  <jens.claudius@yahoo.com>
  1.7704 +
  1.7705 +	The Type 1 parser now skips over top-level procedures as required
  1.7706 +	for a `Simplified Parser'.  This makes the parser more robust as it
  1.7707 +	doesn't poke around in PostScript code.  Additionally, it makes the
  1.7708 +	FontDirectory hackery in src/type1/t1load.c unnecessary.
  1.7709 +
  1.7710 +	* src/psaux/psobjs.c (IS_OCTAL_DIGIT): New macro.
  1.7711 +	(skip_literal_string): Add FT_Error as return value.
  1.7712 +	Handle escapes better.
  1.7713 +	(skip_string): Add FT_Error as return value.
  1.7714 +	Don't set `parser->error' but return error code directly.
  1.7715 +	(skip_procedure): New function.
  1.7716 +	(ps_parser_skip_PS_token): Handle procedures.
  1.7717 +	Update code.
  1.7718 +	(ps_parser_to_token): Update code.
  1.7719 +	(ps_parser_load_field_table): Handle bbox entries also.
  1.7720 +
  1.7721 +	* src/type1/t1load.c (parse_dict): Remove FontDirectory hackery.
  1.7722 +	Add commented-out code for synthetic fonts.
  1.7723 +
  1.7724 +2006-06-24  Eugeniy Meshcheryakov  <eugen@univ.kiev.ua>
  1.7725 +
  1.7726 +	Fix two hinting bugs as reported in
  1.7727 +	http://lists.gnu.org/archive/html/freetype-devel/2006-06/msg00057.html.
  1.7728 +
  1.7729 +	* include/freetype/internal/tttypes.h (TT_GlyphZoneRec): Add
  1.7730 +	`first_point' member.
  1.7731 +
  1.7732 +	* src/truetype/ttgload.c (tt_prepare_zone): Initialize
  1.7733 +	`first_point'.
  1.7734 +	(TT_Process_Composite_Glyph): Always untouch points.
  1.7735 +
  1.7736 +	* src/truetype/ttinterp.c (Ins_SHC): Fix computation of
  1.7737 +	`first_point' and `last_point' in case of composite glyphs.
  1.7738 +	(Ins_IUP): Fix computation of `end_point'.
  1.7739 +
  1.7740 +2006-06-22  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.7741 +
  1.7742 +	Insert EndianS16_BtoN and EndianS32_BtoN as workaround for Intel
  1.7743 +	Mac.  The original patch was written by David Sachitano and Lawrence
  1.7744 +	Coopet, and modified by Sean McBride for MPW compatibility.  Only
  1.7745 +	required data are converted; unused data are left in big endian.
  1.7746 +
  1.7747 +	* src/base/ftmac.c: Include <Endian.h> for byteorder macros for non
  1.7748 +	Mac OS X platforms.
  1.7749 +	(OS_INLINE): Undefine before definition.
  1.7750 +	(count_faces_sfnt): Insert EndianS16_BtoN to parse the header of
  1.7751 +	FontAssociation table in FOND resource.
  1.7752 +	(count_faces_scalable): Insert EndianS16_BtoN to parse the header
  1.7753 +	and fontSize at each entry of FontAssociation table in FOND
  1.7754 +	resource.
  1.7755 +	(parse_fond): Insert EndianS16_BtoN and EndianS32_BtoN to parse
  1.7756 +	ffStylOff of FamilyRecord header of FOND resource, the header,
  1.7757 +	fontSize, fontID at each entry of FontAssociation table, and
  1.7758 +	StyleMapping table.
  1.7759 +	(count_faces): Call `HUnlock' after all FOND utilization.
  1.7760 +
  1.7761 +2006-06-08  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.7762 +
  1.7763 +	Public API of TrueTypeGX, OpenType, and classic kern table validator
  1.7764 +	should return `FT_Err_Unimplemented_Feature' if validation service
  1.7765 +	is unavailable (disabled in `modules.cfg').  It is originally
  1.7766 +	suggested by David Turner, cf.
  1.7767 +	http://lists.gnu.org/archive/html/freetype-devel/2005-11/msg00078.html
  1.7768 +
  1.7769 +	* src/base/ftgxval.c (FT_TrueTypeGX_Validate): Return
  1.7770 +	FT_Err_Unimplemented_Feature if TrueTypeGX validation service is
  1.7771 +	unavailable.
  1.7772 +	(FT_ClassicKern_Validate): Return FT_Err_Unimplemented_Feature if
  1.7773 +	classic kern table validation service is unavailable.
  1.7774 +
  1.7775 +	* src/base/ftotval.c (FT_OpenType_Validate): Return
  1.7776 +	FT_Err_Unimplemented_Feature if OpenType validation service is
  1.7777 +	unavailable.
  1.7778 +
  1.7779 +2006-06-08  Werner Lemberg  <wl@gnu.org>
  1.7780 +
  1.7781 +	* src/bdf/bdflib.c (bdf_load_font): Fix memory leaks in case of
  1.7782 +	errors.
  1.7783 +
  1.7784 +2006-06-07  David Turner  <david@freetype.org>
  1.7785 +
  1.7786 +	* src/type1/t1afm.c (KERN_INDEX): Make it more robust.
  1.7787 +	(T1_Read_Metrics): Fix memory leak which happened when the metrics
  1.7788 +	file doesn't have kerning pairs.  This fixes Savannah bug #16768.
  1.7789 +
  1.7790 +2006-06-06  David Turner  <david@freetype.org>
  1.7791 +
  1.7792 +	Fix memory leak described in Savannah bug #16759.
  1.7793 +
  1.7794 +	We change `ps_unicodes_init' so that it also takes a
  1.7795 +	`free_glyph_name' callback to release the glyph names returned by
  1.7796 +	`get_glyph_name'
  1.7797 +
  1.7798 +	* include/freetype/internal/services/svpscmap.h (PS_Glyph_NameFunc):
  1.7799 +	Renamed to ...
  1.7800 +	(PS_GetGlyphNameFunc): This.
  1.7801 +	(PS_FreeGlyphNameFunc): New typedef.
  1.7802 +	(PS_Unicodes_InitFunc): Add variable for PS_FreeGlyphNameFunc.
  1.7803 +
  1.7804 +	* src/cff/cffcmap.c (cff_sid_to_glyph_name): Use `TT_Face' for first
  1.7805 +	argument.
  1.7806 +	(cff_sid_free_glyph_name): New function.
  1.7807 +	(cff_cmap_unicode_init): Updated.
  1.7808 +
  1.7809 +	* src/psaux/t1cmap.c (t1_cmap_unicode_init): Updated.
  1.7810 +
  1.7811 +	* src/psnames/psmodule.c (ps_unicodes_init): Add variable for
  1.7812 +	PS_FreeGlyphNameFunc and use it.
  1.7813 +
  1.7814 +
  1.7815 +2006-06-04  David Turner  <david@freetype.org>
  1.7816 +
  1.7817 +	* src/base/ftutil.c (ft_mem_qrealloc): Fix the function to accept
  1.7818 +	`item_size == 0' as well -- though this sounds weird, it can
  1.7819 +	theoretically happen.  This fixes Savannah bug #16669.
  1.7820 +
  1.7821 +	* src/pfr/pfrobjs.c (pfr_face_init): Fix the computation
  1.7822 +	of `face->num_glyphs' which missed the last glyph, due to
  1.7823 +	the offset-by-1 computation, since the PFR format doesn't
  1.7824 +	guarantee that glyph index 0 corresponds to the `missing
  1.7825 +	glyph.  This fixes Savannah bug #16668.
  1.7826 +
  1.7827 +2006-05-25  Werner Lemberg  <wl@gnu.org>
  1.7828 +
  1.7829 +	* builds/unix/unix-cc.in (LINK_LIBRARY): Don't comment out
  1.7830 +	`-no-undefined'.  Reported by Christian Biesinger.
  1.7831 +
  1.7832 +2006-05-19  Brian Weed  <bw@imaginengine.com>
  1.7833 +
  1.7834 +	* builds/win32/visualc/freetype.dsp: Release libraries no longer
  1.7835 +	have debug information, and debug libraries use `C7 compatible'
  1.7836 +	debug info.
  1.7837 +
  1.7838 +2006-05-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.7839 +
  1.7840 +	Apply patch by Derek Clegg to fix two memory leaks in the MacOS
  1.7841 +	resource fork handler.  This fixes Savannah bug #16631.
  1.7842 +
  1.7843 +	* src/base/ftobjs.c (load_face_in_embedded_rfork): Replace
  1.7844 +	`FT_Stream_Close' by `FT_Stream_Free' to fix memory leak.
  1.7845 +
  1.7846 +	* src/base/ftrfrk.c (raccess_guess_linux_double_from_file_name):
  1.7847 +	Replace `FT_Stream_Close' by `FT_Stream_Free' to fix memory leak.
  1.7848 +
  1.7849 +2006-05-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.7850 +
  1.7851 +	* build/unix/configure.raw: Add a fallback to disable Carbon
  1.7852 +	dependency, if configured with no options on Mac OS X.
  1.7853 +
  1.7854 +2006-05-19  suzuki toshiya  <mpsuzuki@hiroshima-u.ac.jp>
  1.7855 +
  1.7856 +	* src/base/ftmac.c (open_face_from_buffer): Deallocate stream when
  1.7857 +	its content cannot be parsed as supported font.  This fixes
  1.7858 +	the second part of Savannah bug #16590.
  1.7859 +
  1.7860 +2006-05-18  Werner Lemberg  <wl@gnu.org>
  1.7861 +
  1.7862 +	* src/truetype/ttgload.c (TT_Load_Composite_Glyph)
  1.7863 +	[FT_CONFIG_OPTION_BYTECODE_INTERPRETER]: Make it compilable again.
  1.7864 +
  1.7865 +2006-05-17  David Turner  <david@freetype.org>
  1.7866 +
  1.7867 +	This is a major patch used to drastically improve the performance of
  1.7868 +	loading glyphs.  This both speeds up loading the glyph vectors
  1.7869 +	themselves and the auto-fitter module.
  1.7870 +
  1.7871 +	We now use inline assembler code with GCC to implement `FT_MulFix',
  1.7872 +	which is probably the most important function related to the
  1.7873 +	engine's performance.
  1.7874 +
  1.7875 +	The resulting speed-up is about 25%.
  1.7876 +
  1.7877 +
  1.7878 +	* include/freetype/internal/tttypes.h (TT_LoaderRec): Add fields
  1.7879 +	`cursor' and `limit'.
  1.7880 +
  1.7881 +	* src/autofit/afangles.c (af_corner_is_flat, af_corner_orientation):
  1.7882 +	New functions.
  1.7883 +	(AF_ATAN_BITS, af_arctan, af_angle_atan): Comment out.
  1.7884 +	[TEST]: Remove.
  1.7885 +
  1.7886 +	* src/autofit/afcjk.c (AF_Script_UniRangeRec): Comment out test
  1.7887 +	code.
  1.7888 +
  1.7889 +	* src/autofit/afhints.c (af_axis_hints_new_segment): Don't call
  1.7890 +	`FT_ZERO'
  1.7891 +	(af_direction_compute, af_glyph_hints_compute_inflections): Rewritten.
  1.7892 +	(af_glyph_hints_reload: Rewrite recognition of weak points.
  1.7893 +
  1.7894 +	* src/autofit/aflatin.c (af_latin_hints_compute_segments): Move
  1.7895 +	constant values out of the loops.
  1.7896 +
  1.7897 +	* src/autofit/aftypes.h: Updated.
  1.7898 +
  1.7899 +	* src/base/ftcalc.c (FT_MulFix): Use inline assembler code.
  1.7900 +
  1.7901 +	* src/base/ftoutln.c (FT_Outline_Get_Orientation): Use vector
  1.7902 +	product to get orientation.
  1.7903 +
  1.7904 +	* src/gzip/ftgzip.c (ft_get_uncompressed_size): New function.
  1.7905 +	(FT_Stream_OpenGzip): Use it to handle small files directly in
  1.7906 +	memory.
  1.7907 +
  1.7908 +	* src/psaux/psconv.c (PS_Conv_ASCIIHexDecode, PS_ConvEexecDecode):
  1.7909 +	Improve performance.
  1.7910 +
  1.7911 +	* src/truetype/ttgload.c (TT_Access_Glyph_Frame): Set `cursor' and
  1.7912 +	`limit'.
  1.7913 +
  1.7914 +	(TT_Load_Glyph_Header, TT_Load_Simple_Glyph,
  1.7915 +	TT_Load_Composite_Glyph): Updated.  Add threshold to protect against
  1.7916 +	exceedingly large values of number of contours.  Speed up by
  1.7917 +	reducing the number of loops.
  1.7918 +
  1.7919 +	* src/type1/t1gload.c (T1_Load_Glyph): Don't apply unit matrix.
  1.7920 +
  1.7921 +
  1.7922 +	* src/cache/ftccmap.c (FTC_CMapCache_Lookup): Change the threshold
  1.7923 +	used to detect rogue clients from 4 to 16.  This is to prevent some
  1.7924 +	segmentation faults with fonts like `KozMinProVI-Regular.otf' which
  1.7925 +	comes from the Japanese Adobe Reader Asian Font pack.
  1.7926 +
  1.7927 +2007-05-17  Werner Lemberg  <wl@gnu.org>
  1.7928 +
  1.7929 +	* src/cff/cffload.c (cff_font_done): Deallocate subfont array.  This
  1.7930 +	fixes the first part of Savannah bug #16590.
  1.7931 +
  1.7932 +2006-05-16  Werner Lemberg  <wl@gnu.org>
  1.7933 +
  1.7934 +	* docs/PROBLEMS: Updated icl issues.
  1.7935 +
  1.7936 +----------------------------------------------------------------------------
  1.7937 +
  1.7938 +Copyright 2006, 2007, 2008, 2009, 2010 by
  1.7939 +David Turner, Robert Wilhelm, and Werner Lemberg.
  1.7940 +
  1.7941 +This file is part of the FreeType project, and may only be used, modified,
  1.7942 +and distributed under the terms of the FreeType project license,
  1.7943 +LICENSE.TXT.  By continuing to use, modify, or distribute this file you
  1.7944 +indicate that you have read the license and understand and accept it
  1.7945 +fully.
  1.7946 +
  1.7947 +
  1.7948 +Local Variables:
  1.7949 +version-control: never
  1.7950 +coding: utf-8
  1.7951 +End:

mercurial