Log

Author Commit Date CI Message
Werner Lemberg 0a05ba25 2009-03-20T07:19:45 Protect against malformed compressed data. Problem reported by Tavis Ormandy <taviso@google.com>. * src/lsw/ftzopen.c (ft_lzwstate_io): Test whether `state->prefix' is zero.
Werner Lemberg 0545ec1c 2009-03-20T06:49:10 Protect against invalid SID values in CFFs. Problem reported by Tavis Ormandy <taviso@google.com>. * src/cff/cffload.c (cff_charset_load): Reject SID values larger than 64999.
Vincent Richomme 8b819254 2009-03-19T08:30:49 Update WinCE Visual C project files. * builds/wince/vc2005-ce/freetype.vcproj, builds/wince/vc2008-ce/freetype.vcproj: Add missing base extension files.
Werner Lemberg a9ba23c8 2009-03-19T08:27:59 Remove unused Win32 code. * builds/wince/ftdebug.c: Remove code guarded with `!_WIN32_WCE'. Since Win32 is handled separately this is no longer needed.
Vincent Richomme 91b127f7 2009-03-19T08:17:50 Make `gzip' module compile on WinCE. * src/gzip/zconf.h [_WIN32_WCE]: Define NO_ERRNO_H.
Werner Lemberg 80c253f9 2009-03-19T08:05:06 Remove unused WinCE code. * builds/win32/ftdebug.c: Remove code guarded with `_WIN32_WCE'. Since WinCE is handled separately this is no longer needed.
Werner Lemberg 7bb1005d 2009-03-16T20:42:38 docmaker: Don't ignore single-line code blocks. * src/tools/docmaker/content.py (DocBlock::_init__): Fix change from 2009-01-31.
Werner Lemberg 5a80a94b 2009-03-15T20:58:38 Whitespace.
Steve Langasek 2cd5dce8 2009-03-15T00:58:25 Use __asm__ for declaring assembly instead of asm. * builds/unix/ftconfig.in (FT_MulFix_arm): Use __asm__ instead of asm on arm, fixing a build failure on armel with -pedantic.
Werner Lemberg e4661646 2009-03-14T23:32:24 Fix valgrind warning. * src/sfnt/ttsbit0.c (tt_sbit_decoder_load_bit_aligned): Don't read past the end of the frame.
Werner Lemberg f4f5ba2d 2009-03-12T09:56:04 * Version 2.3.9 released. ========================= Tag sources with `VER-2-3-9'.
Werner Lemberg a284ab62 2009-03-12T08:11:12 * builds/unix/freetype2.in: Move @FT2_EXTRA_LIBS@ to `Libs.private'.
Werner Lemberg b66efefd 2009-03-12T08:07:49 Fix some FreeType Coverity issues as reported for Ghostscript. * src/base/ftobjs.c (FT_New_Face, FT_New_Memory_Face): Initialize `args.stream' (#3874, #3875). (open_face_PS_from_sfnt_stream): Improve error management (#3786). * src/base/ftmm.c (ft_face_get_mm_service): Fix check of `aservice' (#3870). * src/base/ftstroke.c (ft_stroke_border_get_counts): Remove dead code (#3790). * src/base/ftrfork.c (raccess_guess_apple_generic): Check error value of `FT_Stream_Skip' (#3784). * src/type1/t1gload.c (T1_Load_Glyph): Check `size' before accessing it (#3872) * src/pcf/pcfdrivr.c (PCF_Glyph_Load): Check `face' before accessing it (#3871). * src/pcf/pcfread.c (pcf_get_metrics): Handle return value of `pcf_get_metric' (#3789, #3782). (pcf_get_properties): Use FT_STREAM_SKIP (#3783). * src/cache/ftcmanag.c (FTC_Manager_RegisterCache): Fix check of `acache' (#3797) * src/cff/cffdrivr.c (cff_ps_get_font_info): Fix check of `cff' (#3796). * src/cff/cffgload.c (cff_decoder_prepare): Check `size' (#3795). * src/cff/cffload.c (cff_index_get_pointers): Add comment (#3794). * src/bdf/bdflib.c (_bdf_add_property): Check `fp->value.atom' (#3793). (_bdf_parse_start): Add comment (#3792). * src/raster/ftraster.c (Finalize_Profile_Table): Check `ras.fProfile' (#3791). * src/sfnt/ttsbit.c (Load_SBit_Image): Use FT_STREAM_SKIP (#3785). * src/gzip/ftgzip.c (ft_gzip_get_uncompressed_size): Properly ignore seek error (#3781).
Werner Lemberg 0711d389 2009-03-11T21:39:10 Typo.
Werner Lemberg 07e81817 2009-03-11T21:29:54 Extend CID service functions to handle CID-keyed CFFs as CID fonts. * include/freetype/ftcid.h (FT_Get_CID_Is_Internally_CID_keyed, FT_Get_CID_From_Glyph_Index): New functions. * include/freetype/internal/services/svcid.h (FT_CID_GetIsInternallyCIDKeyedFunc, FT_CID_GetCIDFromGlyphIndexFunc): New function typedefs. (CID Service): Use them. * src/base/ftcid.c: Include FT_CID_H. (FT_Get_CID_Is_Internally_CID_keyed, FT_Get_CID_From_Glyph_Index): New functions. * src/cff/cffdrivr.c (cff_get_is_cid, cff_get_cid_from_glyph_index): New functions. (cff_service_cid_info): Add them. * src/cff/cffload.c (cff_font_load): Don't free `font->charset.sids' -- it is needed for access as a CID-keyed font. It gets deleted later on. * src/cid/cidriver.c (cid_get_is_cid, cid_get_cid_from_glyph_index): New functions. (cid_service_cid_info): Add them. * docs/CHANGES: Updated.
Werner Lemberg 9318df0c 2009-03-11T10:20:51 Fix Savannah bug #25597. * src/cff/cffparse.c (cff_parse_real): Don't allow fraction_length to become larger than 9.
Werner Lemberg 1e54a65f 2009-03-11T07:10:26 Minor update.
Werner Lemberg 911f4319 2009-03-11T07:07:37 Fix Savannah bug #25814. * builds/unix/freetype2.in: As suggested in the bug report, move @LIBZ@ to `Libs.private'.
Werner Lemberg 801e7bae 2009-03-11T06:47:49 Fix Savannah bug #25781. We now simply check for a valid `offset', no longer handling `delta = 1' specially. * src/sfnt/ttcmap.c (tt_cmap4_validate): Don't check `delta' for last segment. (tt_cmap4_set_range, tt_cmap4_char_map_linear, tt_cmap4_char_map_binary): Check offset.
Werner Lemberg 34ca21ed 2009-03-11T05:35:01 * src/base/Jamfile: Fix handling of ftadvanc.c. Reported by Oran Agra <oran@monfort.co.il>.
Werner Lemberg 31f5bbba 2009-03-10T11:54:51 Restructure Win32 and Wince compiler support. * src/builds/win32: Remove files for WinCE. Move VC 2005 support to a separate directory. Add directory for VC 2008 support. * src/builds/wince: New directory hierarchy for WinCE compilers (VC 2005 and VC 2008).
Werner Lemberg 21dab911 2009-03-09T18:06:28 More preparations for 2.3.9 release. * docs/CHANGES: Updated. * Jamfile, README: s/2.3.8/2.3.9/, s/238/239/.
Werner Lemberg 8312ab75 2009-03-09T13:18:47 * src/sfnt/rules.mk (SFNT_DRV_H): Add ttsbit0.c.
Werner Lemberg ee3cc2e4 2009-03-09T13:13:44 Fix handling of EBDT formats 8 and 9 (part 2). This patch fixes the following problems in ttsbit0.c: . Bitmaps for compound glyphs were never allocated. . `SBitDecoder' refused to load metrics if some other metrics have already been loaded. This condition certainly makes no sense for recursive calls, so I've just disabled it. Another possibility would be resetting `decoder->metrics_loaded' to false before loading each composite component. However, we must restore the original metrics after finishing the recursion; otherwise we can get a misaligned glyph. . `tt_sbit_decoder_load_bit_aligned' incorrectly handled `x_pos', causing some glyph components to be shifted too far to the right (especially noticeable for small sizes). Note that support for grayscale bitmaps (not necessarily compound) is completely broken in ttsbit0.c. * src/sfnt/tt_sbit_decoder_load_metrics: Always load metrics. (tt_sbit_decoder_load_bit_aligned): Handle `x_pos' correctly in case of `h == height'. (tt_sbit_decoder_load_compound): Reset metrics after loading components. Allocate bitmap.
Werner Lemberg 1a5edf7a 2009-03-09T08:36:18 * builds/unix/configure.raw (version_info): Set to 9:20:3.
Werner Lemberg 42f5c714 2009-03-03T23:34:49 Formatting.
David Turner ab7e52b1 2009-03-03T22:37:13 Fix SFNT kerning table parser against malformed tables. Closes Savannah BUG #25750 * src/sfnt/ttkern.c (tt_face_get_kerning): fix a bug where a malformed table would be succesfully loaded but later crash the engine during parsing.
Werner Lemberg 15b60bb5 2009-03-03T21:35:32 Formatting, copyright years.
David Turner cda6f493 2009-03-03T20:49:32 Update documentation and bump version number to 2.3.9 * include/freetype/freetype.h: bump patch version to 9 * docs/CHANGES: document the ABI break in 2.3.8 * docs/VERSION.DLL: update version numbers table for 2.3.9 * builds/unix/configure.ac: update AC_INIT and version_info numbers.
Werner Lemberg 45f8c5e5 2009-03-03T14:26:47 Minor typos.
David Turner 01ca4da2 2009-03-03T13:28:59 Remove ABI-breaking field in public PS_InfoFontRec definition. Instead, we define a new internal PS_FontExtraRec structure to hold the additionnal field, then place it in various internal positions of the corresponding FT_Face derived objects.
Werner Lemberg 7585683c 2009-03-02T09:09:45 Remove dead code. Minor formatting.
Werner Lemberg e5a7cc23 2009-03-02T09:09:12 Fix handling of EBDT formats 8 and 9. The main cycle in `blit_sbit' makes too many iterations: it actually needs the count of lines in the source bitmap rather than in the target image. * src/sfnt/ttsbit.c (blit_sbit) [FT_CONFIG_OPTION_OLD_INTERNALS]: Add parameter `source_height' and use it for main loop. (Load_SBit_Single) [FT_CONFIG_OPTION_OLD_INTERNALS]: Updated.
Werner Lemberg 14de111f 2009-02-24T21:34:51 Fix Savannah bug #25669. * src/base/ftadvanc.h (FT_Get_Advances): Fix serious typo. * src/base/ftobjs.c (FT_Select_Metrics, FT_Request_Metrics): Fix scaling factor for non-scalable fonts. * src/cff/cffdrivr.c (cff_get_advances): Use correct advance width value to prevent incorrect scaling. * docs/CHANGES: Document it.
Werner Lemberg 1e859924 2009-02-15T07:54:35 Fix Savannah bug #25588. * builds/unix/ftconfig.in (FT_MulFix_arm): Use correct syntax for `orr' instruction.
Werner Lemberg f40170a7 2009-02-12T22:42:27 Minor documentation fixes. Formatting.
Werner Lemberg 0552a496 2009-02-11T22:59:40 * src/truetype/ttobjs.c (tt_check_trickyness): Add `DFKaiShu'. Reported by David Bevan <dbevan@emtex.com>.
Werner Lemberg c2cabd42 2009-02-09T22:20:27 Fix Savannah bug #25495. * src/sfnt/sfobjs.c (sfnt_load_face): Test for bitmap strikes before setting metrics and bbox values. This ensures that the check for a font with neither a `glyf' table nor bitmap strikes can be performed early enough to set metrics and bbox values too.
Werner Lemberg 67bbcbd7 2009-02-04T07:59:16 Fix Savannah bug #25480. * builds/unix/freetype-config.in: For --ftversion, don't use $prefix but $includedir.
Werner Lemberg 763ae208 2009-01-30T23:45:53 Minor docmaker improvements. * src/tools/docmaker/content.py (DocBlock::__init__): Ignore empty code blocks.
Werner Lemberg 1e5e7aa0 2009-01-25T16:27:04 Fix SCANCTRL handling in TTFs. Problem reported by Alexey Kryukov <anagnost@yandex.ru>. * src/truetype/ttinterp.c (Ins_SCANCTRL): Fix threshold handling.
Werner Lemberg 5184ed6d 2009-01-22T10:13:59 Move FT_Get_FSType_Flags to a separate file. Problem reported by Mickey Gabel <mickey@monfort.co.il>. * src/base/ftobjs.c (FT_Get_FSType_Flags): Move to... * src/base/ftfstype.c: This new file. * modules.cfg (BASE_EXTENSION): Add ftfstype.c. * docs/INSTALL.ANY: Updated. * builds/mac/*.txt, builds/amiga/*makefile*, builds/win32/{visualc,visualce}/freetype.*, builds/symbian/*: Updated.
Werner Lemberg 5e83ce4d 2009-01-22T05:53:35 Formatting.
Suzuki, Toshiya (鈴木俊哉) a7c5de59 2009-01-22T04:00:32 * builds/unix/ftsystem.c: Fix 2 error messages ending without LINEFEED
Suzuki, Toshiya (鈴木俊哉) 5a00909a 2009-01-22T03:50:37 * Fix a bug in POSIX resource-fork accessor since 2008-10-04
Werner Lemberg 0dabaa6c 2009-01-19T14:31:53 Fix documentation buglets. Reported by Le Tan Phu <phult@necsv.com>, in report V0021 sent to ft-devel.
Werner Lemberg c591c17b 2009-01-19T08:55:15 Fix Savannah bug #25355. * include/freetype/config/ftconfig.h (FT_MulFix_i386): Make assembler code work with gcc 2.95.3 (as used by the Haiku project). Add `cc' register to the clobber list.
Werner Lemberg 4e263a95 2009-01-19T08:47:43 Documentation fixes. Reported by Chi Nguyen <chint@necsv.com>, in document V0026 sent to ft-devel.
Werner Lemberg 0b6b46ff 2009-01-19T08:35:45 Documentation fixes. Suggested by Chi Nguyen <chint@necsv.com> in document V0024 sent to the ft-devel list.
Werner Lemberg 3739f8b9 2009-01-18T13:13:17 Protect FT_Get_Next_Char. * src/sfnt/ttcmap.c (tt_cmap4_set_range): Apply fix similar to change from 2008-07-22. Patch from Ronen Ghoshal <rghoshal@emtex.com>.
Werner Lemberg 4f7ef401 2009-01-18T10:53:29 Implement FT_Get_Name_Index for SFNT driver. * src/sfnt/sfdriver.c (sfnt_get_name_index): New function. (sfnt_service_glyph_dict): Use it. Problem reported by Truc Truong <tructv@necsv.com>.
Werner Lemberg 59e2c8dd 2009-01-18T06:42:59 Fix documentation of FT_Outline_GetInsideBorder. * include/freetype/ftstroke.h (FT_Outline_GetInsideBorder): Fix documentation. Problem reported by Truc Truong <tructv@necsv.com>. * docs/CHANGES: Updated.
Werner Lemberg e22dd0b8 2009-01-14T06:52:18 * Version 2.3.8 released. ========================= Tag sources with `VER-2-3-8'. * docs/VERSION.DLL: Update documentation and bump version number to 2.3.8. * README, Jamfile (RefDoc), builds/win32/visualc/index.html, builds/win32/visualc/freetype.dsp, builds/win32/visualc/freetype.vcproj, builds/win32/visualce/index.html, builds/win32/visualce/freetype.dsp, builds/win32/visualce/freetype.vcproj: s/2.3.7/2.3.8/, s/237/238/. * include/freetype/freetype.h (FREETYPE_PATCH): Set to 8. * builds/unix/configure.raw (version_info): Set to 9:19:3. * docs/release: Updated.
Werner Lemberg fb4ddb27 2009-01-14T05:30:56 builds/toplevel.mk (dist): Compress better.
Werner Lemberg 9bf73ec4 2009-01-13T17:42:00 Fix C++ compilation. * src/base/ftobjs.c (FT_Get_FSType_Flags): Cast for compilation with C++.
Werner Lemberg 24d72a1b 2009-01-13T17:34:48 Don't use stdlib.h and friends directly. Reported by Mickey Gabel <mickey@monfort.co.il>. * src/base/ftdbgmem.c: s/<stdlib.h>/FT_CONFIG_STANDARD_LIBRARY_H/. * src/gzip/ftgzip.c, src/lzw/ftlzw.c, src/raster/ftmisc.h: s/<string.h>/FT_CONFIG_STANDARD_LIBRARY_H/. * src/autofit/aftypes.h, src/autofit/afhints.c, src/pshinter/pshalgo.c: s/<stdio.h>/FT_CONFIG_STANDARD_LIBRARY_H/ * src/lzw/ftlzw.c, src/base/ftdbgmem.c: Don't include stdio.h.
Werner Lemberg f47acf2b 2009-01-12T20:11:14 Avoid compiler warnings. * */*: s/do ; while ( 0 )/do { } while ( 0 )/. Reported by Sean McBride <sean@rogue-research.com>.
Werner Lemberg e85baf4f 2009-01-12T20:01:10 Fix stdlib dependencies. Problem reported by Mickey Gabel <mickey@monfort.co.il>. * include/freetype/config/ftstdlib.h (ft_exit): Removed. Unused. * src/autofit/afhints.c, src/base/ftlcdfil.c, src/smooth/ftsmooth.c: s/memcpy/ft_memcpy/. * src/psaux/t1decode.c: s/memset/ft_memset/, s/memcpy/ft_memcpy/.
Werner Lemberg 214ca056 2009-01-11T11:45:54 * include/freetype/ftbdf.h (FT_Get_BDF_Property): Improve documentation.
Werner Lemberg fc6d12a1 2009-01-11T10:55:45 * docs/formats.txt: Add link to PCF specification.
Suzuki, Toshiya (鈴木俊哉) 759c07d1 2009-01-09T11:11:53 load_flags of FT_Get_Advance(), FT_Get_Advances() and backends are declared as FT_Int32 to match the flags of FT_Load_Glyph()
Suzuki, Toshiya (鈴木俊哉) 68e16e01 2009-01-09T08:01:15 * src/gxvalid/gxvmort.c (gxv_mort_feature_validate): Fix wrong length check, Savannah patch #6682.
Werner Lemberg 9d83d290 2009-01-09T07:58:08 Fix problem with T1_FIELD_{NUM,FIXED}_TABLE2. * src/psaux/psobjs.c (ps_parser_load_field_table): Don't handle `count_offset' if it is zero (i.e., unused). Otherwise, the first element of the structure which holds the data is erroneously modified. Problem reported by Chi Nguyen <chint@necsv.com>.
Suzuki, Toshiya (鈴木俊哉) a7c00b79 2009-01-09T07:21:16 load_flags of FT_Get_Advance(), FT_Get_Advances() and backends are declared as FT_UInt32 for 16-bit platforms
Werner Lemberg 9b1da084 2009-01-09T06:21:04 tab -> space
Suzuki, Toshiya (鈴木俊哉) 2dc10794 2009-01-09T05:07:15 * src/base/ftobjs.c (FT_Done_Library): Issue an error when FT_Done_Face() is failed and retried
Werner Lemberg a79de11b 2009-01-07T08:27:37 * docs/CHANGES: Document new key `a' in ftdiff.
Werner Lemberg c3263722 2009-01-06T21:00:47 Don't rely on GNU sed. * autogen.sh: Don't use GNUisms while calling sed. Problem reported by Sean McBride.
Werner Lemberg 5758688e 2009-01-06T09:40:22 Typo.
Werner Lemberg a86f1b96 2009-01-06T09:07:22 FT_Bitmap_Convert: Support missing pixel modes. * src/base/ftbitmap.c (FT_Bitmap_Convert): Handle FT_PIXEL_MODE_LCD and FT_PIXEL_MODE_LCD_V. Problem reported by Chi Nguyen <chint@necsv.com>.
Werner Lemberg c679115f 2009-01-06T07:07:39 Fix AC_CANONICAL_XXX issue. * builds/unix/configure.raw: Don't call AC_CANONICAL_BUILD and AC_CANONICAL_TARGET and use $host_os only. A nice explanation for this change can be found at http://blog.flameeyes.eu/s/canonical-target. From Savannah patch #6712.
Werner Lemberg f2e33c11 2009-01-06T06:59:36 Minor fixes. * src/base/ftdbgmem.c (_debug_mem_dummy): Make it static. * src/base/ftmac.c: Remove some #undefs.
Werner Lemberg 1ad384d8 2008-12-25T23:52:00 Set `face_index' field in FT_Face for all font formats. * cff/cffobjs.c (cff_face_init), winfonts/winfnt.c (FNT_Face_Init), sfnt/sfobjs.c (sfnt_init_face): Do it. * docs/CHANGES: Document it.
Werner Lemberg 66043b1c 2008-12-22T18:09:48 * builds/unix/ftsystem.c (FT_Stream_Open): Reject zero-length files. Patch from Savannah bug #25151.
Werner Lemberg 3c5ad951 2008-12-21T17:51:12 * src/pfr/pfrdrivr.c, src/winfonts/winfnt.c, src/cache/ftcmanag.c, src/smooth/ftgrays.c, src/base/ftobjc.s, src/sfobjs.c: s/_Err_Bad_Argument/_Err_Invalid_Argument/. The former is for errors in the bytecode interpreter only.
Werner Lemberg 478cca14 2008-12-21T17:38:23 * src/base/ftpfr.c (FT_Get_PFR_Metrics): Protect against NULL arguments. Fix return value for non-PFR fonts. Both problems reported by Chi Nguyen <chint@necsv.com>.
Werner Lemberg ce33a312 2008-12-21T10:29:30 FT_USE_MODULE declares things as: extern const FT_Module_Class (or similar for C++). However, the actual types of the variables being declared are often different, e.g., FT_Driver_ClassRec or FT_Renderer_Class. (Some are, indeed, FT_Module_Class.) This works with most C compilers (since those structs begin with an FT_Module_Class struct), but technically it's undefined behavior. To quote the ISO/IEC 9899:TC2 final committee draft, section 6.2.7 paragraph 2: All declarations that refer to the same object or function shall have compatible type; otherwise, the behavior is undefined. (And they are not compatible types.) Most C compilers don't reject (or even detect!) code which has this issue, but the GCC LTO development branch compiler does. (It outputs the types of the objects while generating .o files, along with a bunch of other information, then compares them when doing the final link-time code generation pass.) Patch from Savannah bug #25133. * src/base/ftinit.c (FT_USE_MODULE): Include variable type. * builds/amiga/include/freetype/config/ftmodule.h, include/freetype/config/ftmodule.h, */module.mk: Updated to declare pass correct types to FT_USE_MODULE.
Werner Lemberg b6fa8451 2008-12-21T09:46:31 * src/autofit/aflatin.c (af_latin_hint_edges), src/autofit/aflatin2.c (af_latin2_hint_edges), src/autofit/afcjk.c (af_cjk_hint_edges): Protect against division by zero.
Werner Lemberg 05bf6877 2008-12-18T06:32:10 * docs/CHANGES: Updated. Provide API for accessing embedding and subsetting restriction information. * include/freetype.h (FT_FSTYPE_INSTALLABLE_EMBEDDING, FT_FSTYPE_RESTRICTED_LICENSE_EMBEDDING, FT_FSTYPE_PREVIEW_AND_PRINT_EMBEDDING, FT_FSTYPE_EDITABLE_EMBEDDING, FT_FSTYPE_NO_SUBSETTING, FT_FSTYPE_BITMAP_EMBEDDING_ONLY): New macros. (FT_Get_FSType_Flags): New function declaration. * src/base/ftobjs.c (FT_Get_FSType_Flags): New function. * src/cid/cidtoken.h, src/type1/t1tokens.h, src/type42/t42parse.c (t42_keywords): Handle `FSType'. * include/freetype/t1tables.h (PS_FontInfoRec): Add `fs_type' field.
Werner Lemberg cfc514ea 2008-12-17T11:03:26 * src/base/ftsynth.c (FT_GlyphSlot_Embolden): Don't use internal macros so that copying the source code into an application works out of the box.
Werner Lemberg c8c4cc83 2008-12-17T10:50:31 * include/freetype/ftsynth.h, src/basae/ftsynth.c: Move FT_GlyphSlot_Own_Bitmap to... * include/freetype/ftbitmap.h, src/base/ftbitmap.c: These files. * docs/CHANGES: Document it.
Werner Lemberg 00bcd34a 2008-12-17T10:15:43 Improve documentation of FT_Outline_Embolden.
Werner Lemberg 5914cb62 2008-12-16T13:12:18 Minor doc fixes.
Werner Lemberg b972a2a2 2008-12-11T08:55:48 Generalize the concept of `tricky' fonts by introducing FT_FACE_FLAG_TRICKY to indicate that the font format's hinting engine is necessary for correct rendering. At the same time, slightly modify the behaviour of tricky fonts: FT_LOAD_NO_HINTING is now ignored. To really force raw loading of tricky fonts (without hinting), both FT_LOAD_NO_HINTING and FT_LOAD_NO_AUTOHINT must be used. Finally, tricky TrueType fonts always use the bytecode interpreter even if the patented code is used. * include/freetype/freetype.h (FT_FACE_FLAG_TRICKY, FT_IS_TRICKY): New macros. * src/truetype/ttdriver.c (Load_Glyph): Handle new load flags semantics as described above. * src/truetype/ttobjs.c (tt_check_trickyness): New function, using code of ... (tt_face_init): This function, now simplified and updated to new semantics. * src/base/ftobjs.c (FT_Load_Glyph): Don't use autohinter for tricky fonts. * docs/CHANGES: Document it.
Werner Lemberg 1474f439 2008-12-09T06:51:56 Really fix Savannah bug #25010: An SFNT font with neither outlines nor bitmaps can be considered as containing space `glyphs' only. * src/truetype/ttpload.c (tt_face_load_loca): Handle the case where a `glyf' table is missing. * src/truetype/ttgload.c (load_truetype_glyph): Abort if we have no `glyf' table but a non-zero `loca' entry. (tt_loader_init): Handle missing `glyf' table. * src/base/ftobjs.c (FT_Load_Glyph): Undo change 2008-12-05. * src/sfnt/sfobjs.c (sfnt_load_face): A font with neither outlines nor bitmaps is scalable.
Werner Lemberg e3b083c6 2008-12-05T22:50:40 * src/autofit/aflatin.c (af_latin_uniranges): Add more ranges. This fixes Savannah bug #21190 which also provides a basic patch.
Werner Lemberg 76fffcd8 2008-12-05T18:37:44 * include/freetype/freetype.h (FT_LOAD_ADVANCE_ONLY): Use value 0x100 instead of 0x10000; the latter value is already occupied by FT_LOAD_TARGET_LIGHT. Bug reported by James Cloos. Handle SFNT with neither outlines nor bitmaps. This fixes Savannah bug #25010. * src/base/ftobjs.c (FT_Load_Glyph): Reject fonts with neither outlines nor bitmaps. * src/sfnt/sfobjs.c (sfnt_load_face): Don't return an error if there is no table with glyphs. * src/sfnt/ttload.c (tt_face_lookup_table): Improve debugging message. Other minor cosmetics.
Werner Lemberg afe60160 2008-12-01T12:53:00 GDEF tables need `glyph_count' too for validation. Problem reported by Chi Nguyen <chint@necsv.com>. * src/otvalid/otvgdef.c (otv_GDEF_validate), src/otvalid/otvalid.h (otv_GDEF_validate), src/otvalid/otvmod.c (otv_validate): Pass `glyph_count'.
Werner Lemberg 1a5d561d 2008-11-29T22:50:24 * src/autofit/afcjk.c, src/base/ftoutln.c, src/base/ftrfork.c, src/bdf/bdfdrivr.c, src/gxvalid/gxvmorx.c, src/otvalid/otvmath.c, src/pcf/pcfdrivr.c, src/psnames/pstables.h, src/smooth/ftgrays.c, src/tools/glnames.py, src/truetype/ttinterp.c, src/type1/t1load.c, src/type42/t42objs.c, src/winfonts/winfnt.c: Fix compiler warnings (Atari PureC).
Werner Lemberg 8f9b7f50 2008-11-29T17:35:58 * src/type/t1load.c (mm_axis_unmap): Revert previous patch and fix it correctly by using FT_INT_TO_FIXED (FreeType expects 16.16 values in the /BlendDesignMap space).
Werner Lemberg b2cb6ce6 2008-11-29T09:32:12 * src/type1/t1load.c (mm_axis_unmap): `blend_points' is FT_Fixed*, whereas `design_points' is FT_Long*. Therefore, return blend rather than design points.
Werner Lemberg 02197280 2008-11-29T09:31:44 Formatting.
Werner Lemberg c7597edb 2008-11-27T21:55:20 * src/cff/cffparse.c (cff_parse_real): Handle more than nine significant digits correctly. This fixes Savannah bug #24953.
Werner Lemberg 0a263a8b 2008-11-25T05:44:41 * src/base/ftstream.c (FT_Stream_ReadFields): Don't access stream before the NULL check. From Savannah patch #6681.
Werner Lemberg 52cd0fc8 2008-11-24T08:15:05 Fixes from the gnuwin32 port. * src/base/ftlcdfil.c: s/EXPORT/EXPORT_DEF/. * src/base/ftotval.c: Include FT_OPENTYPE_VALIDATE_H. * src/psaux/psobjs.c (ps_table_add): Check `length'.
Werner Lemberg 105721a5 2008-11-15T10:35:51 * src/truetype/ttinterp.c (tt_default_graphics_state): The default value for `scan_type' is zero, as confirmed by Greg Hitchcock from Microsoft. Problem reported by Michal Nowakowski <miszka@limes.com.pl>.
Werner Lemberg 312043f4 2008-11-12T06:29:41 * src/cff/cffdrivr.c (cff_get_cmap_info): Initialize `format' field. This fixes Savannah bug #24819. Document `format' field of TT_CMapInfo.
Werner Lemberg e7aad025 2008-11-08T22:00:55 * src/sfnt/sfobjs.c (sfnt_load_face): Remove #if 0/#endif guards since OpenType version 1.5 has been released. * include/ttnameid.h (TT_NAME_ID_WWS_FAMILY, TT_NAME_ID_WWS_SUBFAMILY): New macros for OpenType 1.5. (TT_URC_COPTIC, TT_URC_VAI, TT_URC_NKO, TT_URC_BALINESE, TT_URC_PHAGSPA, TT_URC_NON_PLANE_0, TT_URC_PHOENICIAN, TT_URC_TAI_LE, TT_URC_NEW_TAI_LUE, TT_URC_BUGINESE, TT_URC_GLAGOLITIC, TT_URC_YIJING, TT_URC_SYLOTI_NAGRI, TT_URC_LINEAR_B, TT_URC_ANCIENT_GREEK_NUMBERS, TT_URC_UGARITIC, TT_URC_OLD_PERSIAN, TT_URC_SHAVIAN, TT_URC_OSMANYA, TT_URC_CYPRIOT_SYLLABARY, TT_URC_KHAROSHTHI, TT_URC_TAI_XUAN_JING, TT_URC_CUNEIFORM, TT_URC_COUNTING_ROD_NUMERALS, TT_URC_SUNDANESE, TT_URC_LEPCHA, TT_URC_OL_CHIKI, TT_URC_SAURASHTRA, TT_URC_KAYAH_LI, TT_URC_REJANG, TT_URC_CHAM, TT_URC_ANCIENT_SYMBOLS, TT_URC_PHAISTOS_DISC, TT_URC_OLD_ANATOLIAN, TT_URC_GAME_TILES): New macros for OpenType 1.5.
Werner Lemberg b6192827 2008-11-08T07:28:39 * src/base/ftobjs.c (ft_glyphslot_free_bitmap): Protect against slot->internal == NULL. Reported by Graham Asher.
Werner Lemberg 95120928 2008-11-08T07:20:25 * src/sfnt/sfobjs.c (tt_face_get_name): Modified to return an error code so that memory allocation problems can be distinguished from missing table entries. Reported by Graham Asher. (GET_NAME): New macro. (sfnt_load_face): Use it.