[HarfBuzz] harfbuzz: Changes to 'refs/tags/0.6.0'
Behdad Esfahbod
behdad at kemper.freedesktop.org
Wed Mar 4 12:33:08 PST 2015
Tag '0.6.0' created by Behdad Esfahbod <behdad at behdad.org> at 2011-05-27 08:48 -0700
0.6.0
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
iEYEABECAAYFAk3fV1sACgkQn+4E5dNTERWjswCgkSqPcblHH6i3UuCaPOldI4/P
RW4AoJrhL6SIHYu97jMRKcL11i229YPb
=ahcU
-----END PGP SIGNATURE-----
Changes since the dawn of time:
Behdad Esfahbod (1280):
Fix bug to copy glyph from in_string, not out_string.
Remove the unused parameter from the IN_CURITEM() and IN_CURGLYPH macros.
Replace perror with perror_. Remove FT_BEGIN_STMNT and FT_END_STMNT.
Generate valid XML output. Dump LookupFlag too.
Patches from #170414. Reviewed by Matthias Clasen.
Turn various gcc warnings off. Adding const, adding static, fully
Remove debug line that got in accidentally.
Part of #101079:
Reworked basic shaper with OpenType support. (#101079, based on patch from
Protect against possible division by zeros (#316468, Steve Grubb)
Added "Since:" tags to all interfaces added after Pango 1.0. (#319116,
Fix typo in docs.
Tiny doc improvement.
Use g_slice for PangoOTBuffer allocation. (bug #325026, Matthias Clasen)
pango/Makefile.am, pango/fonts.c, pango/glyphstring.c,
Make sure #include <config.h> is the first include in the file. (bug
If major.minor of required and available glib versions are the same, add
Removed.
Handle GSUB Lookup type 8, and ReverseChainContextualSubst table. (bug
=== Released 1.12.0 ===
Don't err on Table_Missing.
Convert pango/opentype to the new project called HarfBuzz.
Define NULL.
.
.
Make sure TTAG_GDEF and frineds are defined, needed for FreeType <= 2.1.7
Update from HarfBuzz. Lars Knoll fixed all the warnings.
Fix minor bugs reported by the Coverity scan report.
Bug 337924 – cleanups for issues reported by various compilers Patch
Fix loop variables. (coverity found bug.)
Bug 336153 – Mark to mark positioning (Lookup Type 6) isn't correct when
Bug 341138 – Using TTC font, Gtk2 programs begin to eating big memory
Bug 345600 – cvs build error in pango/opentype/Makefile
Bug 347073 – Allow empty GPOS table
First version.
Second version. Complete redesign, based on C++ classes to ensure endian
Remove the annoying HB_ prefix.
After DEFINE_SCRIPT_ARRAY
Add Makefile
Add OpenTypeFontFile.
Make types not instantiable
Use CamelCaseTags.
LangSys
Implement Feature
LookupFlags
Rename to harfbuzz-ng.cc
Coverage.
s/DEFINE_NOT_INSTANTIABLE/DEFINE_NON_INSTANTIABLE/
Define more structs using DEFINE_INT_TYPE.
Rename CoverageFormat to Coverage
ClassDef
Device tables.
Finished OpenType Common Table Formats
GSUBGPOSHeader
s/OpenTypeFont/OpenTypeFontFace/g
Add GPOS stub
Use union for Coverage
Use union for ClassDef
Oops. s/OpenTypeFontFaceFile/OpenTypeFontFile/g
Break and rename, in the layout of old HarfBuzz codebase
Remove stale comment
Don't shift down the mark attachment type
Add stub GDEF files
Remove .cvsignore files (moved to svn:ignore prop)
Copy fixes from harfbuzz stable branch. Includes a leak fix, a kerning
Link freetype to harfbuzz-dump, for those systems that don't track
Improve stupid Makefile
[open] small fixes, including not using unions for main structs
[gdef] Initial implementation
Don't ignore error return value of hb_buffer_copy_output_glyph(). Patch
Bug 463430 – Gets stuck while "formatting message"
Bug 302952 – The placement of a diacritic marks for an arabic ligature
Bug 485559 – Boston Summit HarfBuzz optimizations
Bug 485621 – Get rid of freetype memory allocator in harfbuzz
Allocate buffer->positions lazily.
Rename buffer->inplace to buffer->separate_out with the inverted meaning,
Minor.
Move some code around.
Some more cleanup.
Don't include harfbuzz-dump.[ch] in libharfbuzz.a. Those are just used by
Same here.
Build harfbuzz.c instead of individual source files, to let compiler go
Remove FTGLUE_API/APIDEF cruft.
Mark internal symbols as HB_INTERNAL and define that to static in
Bug 488840 – harfbuzz: protect against ligid overflow
Add commented-out dummy struct for Extension lookups.
New header file harfbuzz-global.h. Rename FT_* int types to HB_* types.
Rename ftglue.c to harfbuzz-impl.c and more type renames and moving code
More cleanup, remove redundant error types.
Even more cleanup and more type renames.
Fix typo.
Some more cleanup and merging.
And some more.
Remove dead code.
Minor
Remove unused macro.
Bug 485536 – underline_position can be zero
Undo accidental change.
Bug 501575 – Compile errors Patch from Jens Granseuer
HarfBuzz was relicensed to a more generous and simpler license. Adapt. See
Remove COPYING.GPL and COPYING.FTL that are no longer there.
Misc cleanup
Finish and test GDEF
Define get_for_data() factories
Make all code NULL-free and assert-free
Clean up file names, add namespace
Minor cleanup, add LIKELY and UNLIKELY annotations
Add copyright notices.
Initial gsub stub
Minor renaming
Minor
Remove unused macro
Starting public interface
More public api
Implement glyph properties
[GDEF] Finish public API
[GDEF] Finish internal API
GDEF completely working now
Rename hb_ot_layout_create() to hb_ot_layout_create_for_data()
Rename HB_OT_Layout to hb_ot_layout_t
Make main.cc compile again, which means finished getter API
Add script and language public getter API
Finish script, language, and feature public API
Fix typo, add TODOs
[hb-ot-layout] Add proper namespace to accessors
Bug 540592 – Crash in HB_GSUB_Apply_String with Linux-Libertine font
Fix left-to-right positioning. Reported by Peter Hunter.
Bug 528272 – "Error loading GPOS table 5503" when using katakana
Fix more warnings.
Bug 469049 – Fix all compiler warnings
Allocate all array rows in a single ALLOC call. Saves over 2000 alloc
Remove old cruft.
Use calloc(), instead of malloc()ing and memset()ing.
Remove ClassDef->Defined field. This is the comment accompanying it:
Allocate all array rows in a single ALLOC call. Saves over 100 alloc calls
Fix Bug 572529 – Poor -I ordering can break build
[opentype] Use size_t instead of uint for malloc wrappers
[opentype] Protect against illegal access for arrays of length zero
Bug 577952 – Error loading {GDEF,GSUB,GPOS} table 0x6EAD
Give it a start at GSUB
Use git.mk
Merge harfbuzz-ng
Implement the first substitute()
[harfbuzz/GSUB] towards a partially working GSUB
[GSUB] Fix reverse lookup loop like we did in the old code before
[GSUB] Implement Extension subtables
[GSUB] Implement Alternate subtables
[GSUB] Start Ligature subtable support
[GSUB] Hook new GSUB up in Pango
[GSUB] Implement ligature substitutions
[GSUB] Minor refactoring
[GSUB] Towards Context subtitutes
[GSUB] minor
[HarfBuzz] Start a TODO file
[GSUB] Shuffle
[GSUB] ContextSubst format 1
[HB] Remove get_size()
[HB] Remove DEFINE_NON_INSTANTIABLE
[HB] Add TODO item
[HB] Fix typo
[GSUB] Finish ContextSubstFormat1
[GSUB] Add GSUB::substitute_lookup()
[GSUB] Implement ContextSubstFormat2
[GSUB] Implement ContextSubstFormat3
[GSUB] Start ChainContextSubst
[HB] Remove obsolete comment
[HB] Use templates for Null objects
[HB] Automate int-type size assertion
[HB] Add OffsetTo template.
[HB] Use OffsetTo<> in more places
[HB] Use OffsetTo<> for Coverage
[HB] Add ArrayOf<>
[HB] Use ArrayOf<> in GSUB
[HB] Simplify more arrays
[HB] Update copyright years
[HB] Add TODO item
[HB] Simplify buffer
[HB] Renames
[GSUB] Unify ContextSubst matching
[HB] Move Context matching logic out of GSUB
[HB] Unify first glyph property checking
[GSUB] Further optimize the main switch
[HB] Propagate property of first glyph
[HB] Couple size checks
[HB] Use four bytes for Null Tag, not 5
[HB] Cleanup format unions
[HB] More shuffling
[HB] Split Layout-common tables into new files
[HB] Remove stale TODO
[HB] Start ChainContext and ReverseChainSingleSubst lookups
[HB] Cosmetic
[HB] Add check to avoid infinite recursion
[HB] Towards sharing Context and ChainContext code
[HB] More churning towards ChainContext lookups
[HB] More template goodness
[HB] Add HeadlessArrayTo<>
[HB] A step closer to working ChainContext
[HB] Further modularize Context matching
[HB] One more step to go, for fully working GSUB and ChainContext
[HB] Implement backtrack matching
[HB] ChainContext complete
[HB] Fix context_length checking
[HB] Correctly skip glyphs when applying (Chain)Context lookups
[HB] Minor cleanup
[GSUB] Fix context_length handling in Ligature too
[HB] Cleanup TODOs
[HB] Tweak some constants and fix Coverage
[GSUB] Oops, fix Extension check
[HB] Don't use G_LIKELY!
[GSUB] Implement ReverseChainSingleSubst
[GSUB] Protect against mismatching Extension subtable types
[HB] Minor
[GSUB] Minor
[HB] Start GPOS!
Switch Pango to new, defunt, GPOS
[HB] Simplify casts
[HB] Internally rename position() and substitute() to apply()
[HB] Rename LOOKUP_ARGS to APPLY_ARGS
[HB] More reference cast simplification
[HB] Use enums
[GPOS] Start filling apply() functions in
[GPOS] PairPosFormat1
[GSUB] PairPosFormat2
[GPOS] CursivePosFormat1
[HB] Indentation
[HB] Remove unused methods
[HB] Indentation
[GDEF] Simplify Device access
[HB] Move lookup types enum into subtable class
[GPOS] Fix more brokenness
[GPOS] Finally it's working, up to Cursive
[HB] Remove all references to the old code!
[HB] Rename harfbuzz-buffer to hb-buffer
[HB] Remove last dependence on the old code base!
[HB] Add TODO item
[HB] Add TODO item
[GPOS] Start MarkBasePosFormat1
[GPOS] Remove apply_value() return value
[GPOS] Implement Device support in AnchorFormat3
[GPOS] Implement MarkArray interface
[GPOS] MarkBasePosFormat1
[GPOS] MarkMarkPosFormat1
[HB] Ouch. Add files.
[GPOS] Remove printf. MarkMarkPos1 is working
[HB] Share Extension lookup code between GSUB and GPOS
[HB] Remove apply_subtables() again
[GPOS] MarkLigPosFormat1
[GDEF] Add some get_carret_value() code
[HB] Add TODO items
[HB] Minor
[HB] Check for GDEF/GSUB/GPOS versions
[HB] Simplify version check in GSUB/GPOS
[HB] Remove unused data types
[HB] Simplify tag
[HB] Add FixedVersion cast to int
[HB] Remove stale TODO mark
[HB] Remove old code!
[HB] Remove stale makefile.msc too
[HB] Update text files
[HB] simplify macros
[HB] Simplify some basic things
[HB] Simplify more
[HB] Simplify Tag
[HB] More cleanup
[HB] Would have helped if I actually knew C++ before using it...
[HB] Update copyright years
[HB] Remove one XXX, add another
[HB] Clean more
[HB] Cleanup buffer
[HB] More buffer cleanup
[HB] Remove more macros
[HB] Add get_attach_points()
[HB] Implement get_lig_carets()
[HB] Start MarkFilteringSet support
[HB] More de-C++'ization
[HB] Support parsing MarkFilteringSets introduced in OpenType 1.6
[HB] Simplify MarkAttachmentType handling
[GDEF] Support MarkFilteringSets
[HB] When looking back/forward, skip marks only
[GPOS] Fix mark matching
[GPOS] Fix PairPos signedness
[HB] Fix glyph properties
[GPOS] Remove unused variables
[HB] Remove useless include
[GPOS] Add vertical TODO
[GPOS] Fix property checking
[HB] Improve buffer. Don't dup out buffer unless out is longer than in
[GPOS] Advance buffer cursor in SinglePos lookups. Ouch!
XX
Revert "XX"
Apply patch from Jonathan Kew
[HB] Fix buffer enlargement. Ouch
[HB] Rename internal vars
[HB] Move direction to buffer
[HB] Add a "blob" manager
[HB] Remove hinting setting and use ppem==0 to mean "no hinting"
[HB] Use calloc instead of malloc where feasible
[HB] Fix for dfont's with multiple faces
[HB] Simplify refcounting functions
[HB] Add abstract font and face API
[HB] Simplify object creation
[HB] Assorted compiler macros
[HB] Remove glib dependency
[HB] Add get_reference_count()
[HB] Move typedef's around
[HB] Port buffert to new object API
[OT] Match struct with HB's
[HB] Cleanup public buffer structs
[HB] Cleanup TODO
[HB] Rename _duplicate to _copy
[HB] Add XXX marks
[HB] Add top-level header files
[HB] Port ot-layout to new public API
[HB] Move OT file handling out of ot-layout
[OT] Rename C++ header files from *.h to *.hh
[HB] Rename hb-font.c to hb-font.cc
[HB] Add sub-blobs
[HB] Simplify sub-blob support
[HB] Use face_t directly instead of ot_layout_t
[HB] Make it all work again
[HB] Remove use of typeof()
[HB] Start sanitize()
[HB] More sanitize()
[HB] Optimize sanitize()
[HB] Add comment
[HB] Finish GSUB sanitize()
[HB] Simplify indirect sanitize()
[HB] Merge more templates
[Hb] Use reinterpret casts instead of direct casts to char *
[HB] More cast cleanup
[HB] Fix couple of bugs
[HB] More casts
[HB] Sanitize DeviceTable
[HB] GPOS sanitize()
[HB] Fix mix warnings
[HB] Hookup NEUTER()
[HB] Remove stale TODO
[HB] Fix Extension sanitize()
[HB] GDEF sanitize()
[HB] Tag sanitize()
[HB] open-file sanitize()
[HB] More sanitize infrastructure
[HB] Shuffle code around
[HB] Minor cleanup
[HB] Add XXX
[HB] Add Sanitizer
[HB] Fix leak
[HB] Hook Sanitizer up. Hell's breaking loose right now
[HB] Avoid infinite recusion in Extension sanitize()
[HB] Fix warnings
[HB] Save edit even if not writeable
[HB] Rename open-types to open-type; beauty
[HB] Add sanitize debugging facilities
[HB] Add missing sanitize
[HB] Fix fatal Sanitizer bug
[HB] More debugging output
[HB] Fix a couple other sanitize() bugs
[HB] Fix another sanitize() bug; hopefully it's the last one
[HB] turn debugging off
[HB] Fix build of main.cc
[HB] Minor
[HB] Improve debug output and fix mprotect bug
[HB] Fix blob unlock
[HB] Improve debug output
[HB] Add a few TODO items
[HB] Minor
[HB] Improve debug output
[HB] Use glib again
[HB] Fix blob to use a actual mutex
[HB] Remove a few 'inline's, though the compiler mostly ignores them
[HB] Fix unaligned access
[HB] Remove stale XXX
[HB] Rebrand XXX as TODO
[HB] Remove another stale XXX
[HB] Remove unused var
[HB] Fix various XXX issues
[HB] Remove clumsy macros and improve API
[HB] Fix bug introduced recently
[HB] Rename hb_ot_layout_feature_mask_t to hb_mask_t
[HB] Remove hb_ot_layout_table_find_feature()
[HB] Print mark sets in main.cc
[HB] Remove done TODO item
[HB] Add a NEXT() macro
[HB] Remove unused code
[HB] Indent
[HB] Don't override CXX compiler
[HB] Put C++ inline's back
[HB] Start adding Unicode funcs
[HB] Reuse the positions array as alt string array
[HB] Add hb_buffer_reverse()
[HB] Add buffer UTF-X API
[HB] Implement buffer UTF-X input
[HB] Flesh out Unicode funcs
[HB] Initialize unicode funcs to nil getters
[HB] Use nil unicode funcs in nil face
[HB] Add hb_unicode_funcs_make_immutable()
[HB] Add hb-glib
[OT] Hookup glib unicode funcs
[HB] Add missing initializer
[HB] Add hb_font_funcs_make_immutable()
[HB] Fix invalid access / overflow on x86-64
[HB] Ouch. Fix compilation.
[HB] Fixed signedness warnings
[HB] Fix _hb_buffer_next() when positioning
[HB] Always clear positions if dirty, before returning to user
[HB] Add comment
Bug 591511 – hb-blob.c does not compile using mingw on windows
Bug 591413 – needs to link with libstdc++
[HB] Fix buffer sizing issue with mingw gcc
Bug 591511 – hh-blob.c does not compile using mingw on windows
[HB] Bitfield packing *is* very delicate
[HB] Add empty hb_shape() API
[HB] Add note about auditing sanitize code for overflows
[HB] Use SANITIZE_THIS() when applicable
[HB] Use inline function for SANITIZE_MEM()
[HB] Debug output for SANITIZE_MEM()
[HB] Fix possible int overflows during sanitize
[HB] Simplify MarkMark
[HB] Simplify MarkBase and MarkLig too
[HB] Correctly sanitize LigatureAttach
[HB] Move code around
[HB] More minor shuffling
[HB] Merge mark positionin code between three types of lookups
[HB] Simplify loop
[HB] Avoid int overflow in GPOS
Bug 592194 - Fix missing _SC_PAGE_SIZE macro
[HB] Fix wrong method signature
[HB] Fix more wrong method signatures
[HB] Fix pedantic warnings
Fix a few other pedantic warnings
[HB] Add font funcs prototypes
[HB] Fix typo
[HB] Hide lig_id and component members of hb_glyph_info_t
[HB] s/writeable/writable/g
[HB] Remove HB_MEMORY_MODE_READONLY_NEVER_DUPLICATE
[HB] Rename CAIRO_ in macro prefix to HB_
[HB] Fix more casts
[HB][glib] Make glib unicode funcs static
Bug 592484 - invalid write in HB
[HB] Bug 593231 - < c99 compiler dislikes ValueRecord
[HB] Indent
[HB] Simplify counting
Fix stupid array growing bug
[HB] Allow enabling different debug facilities individually
[HB] Add GSUB/GPOS tracing
[HB] Rename DEBUG to TRACE where appropriate
[HB] Add TODO item
[HB] Fix bug in chain_context_lookup() invocations
[HB] Fix apply_lookup() loop
[HB] Add comment
[HB] Fix lookup_flag ignoring
[HB] Add point_index to get_contour_point()
[HB] Add glyph_metrics typedef
Add build system
Generate ChangeLog
Install library
Remove use of GINT16_FROM_BE
MSVC has no stdint.h
Build without glib
Update Makefile to build without glib
We don't really use gthread directly
Disable configure cache
Fix build without glib, again
Another try at build without glib
Cosmetic
Don't use zero-sized arrays
More MSVC fixes from Jonathan Kew
Add bunch of TODO items
[TODO] Remove obsolete item
[configure] Fix check for FreeType
Use the C linker, not C++ linker
Add check for not linking to libstdc++
[TODO] Add item for fixing buffer error handling
[Makefile] Install hb-unicode.h
Move unicode_funcs to buffer
Namespace MSVC defines in public header
Fix hb_be_uint16()
Add ICU glue
Start ft glue
Implement nil font functions
Add TODO item
Finish FT glue. Rough and untested
Fix array query API
Fix previous commit, ouch!
Minor
Another one
Define ARRAY_LENGTH
Add hb_language_t as well as language/script conversion to OT tags
Add script and language to buffer
Start filling hb_shape() in
Cosmetic
Rename [xy]_pos to [xy]_offset since we don't accumulate positions
Add hb_font_get_*
Include stdio.h if debugging
Fix MarkMark issue with ligid and components
Add default positioning to hb-shape
Add hb_ft_face_create_cached
Fix ref counting
Add TODO item
Initialize font->klass
Return 0 from get_glyph_nil
Cosmetic
Add debugging to object lifecycle
include errno.h
Fix warning
Cosmetic
Fix FT_Face generic finalizer
Minor.
Rename hb_buffer_get_len() to hb_buffer_get_length()
Fix FT_Face finalizer call
Add hb_ot_layout_position_finish()
Add _hb_buffer_add_output_glyphs() that takes codepoint_t*
[GSUB] More ligature/component fixing
Remove debug info that crept in
Change order of font and face for API consistency
Oops, wrong change
Handle shaping in non-native direction
Reverse buffer at the end if RTL
Remove done item
Remove obsolete TODO item
Fix sanitize
Add Mongolian variation selectors
Use autoconf FLEXIBLE_ARRAY_MEMBER when available
Fix warning
Another C++ strictness fix
Distribute autogen.sh
Make main.cc compile without glib
Add HB_DIRECTION_IS_FORWARD/BACKWARD
Explicitly track whether the buffer has positions
We'll have to link to libstdc++ if linking to ICU, so disable test for now
Add hb_unicode_get_*() functions
Protect against NULL funcs
Do mirroring
Direct unicode->get_mirroring directly
Add TrueType kern support
Refactor hb_shape a bit
Avoid overflow
Pass features down
Hook OpenType shaping up
Oops, add file.
Remove glibism!
Fallback to 'kern' if no GPOS applied
Revert "Fallback to 'kern' if no GPOS applied"
Indent
Fix compile with older FreeType
[TODO] Add kern/GPOS interaction
[GDEF] Fix bug in building synthetic GDEF
Use __attribute__((unused)) only with gcc 4 and later
Improve the alignment for NullPool
Make blob unlocking 64bit-safe
[ft] Check stream->read instead of stream->base
Cosmetic
Typo
Fix the mystery bug!
Fix leak when duplicating blob
Fix debug build
Fix warnings
Round instead of trunc
Remove ASSERT_SIZE_DATA
Add couple consts to operators
Fix Class operator return type
Cosmetic
Simplify Tag struct
Use a function template instead of struct template for Null
Remove stale TODO item
Improve comments
WIP
GNOME Bug 613015 - [HB] Does not sanitize Device tables referenced from ValueRecords
Remove unused macros
Move macros around
Minor
Rename macros
Remove unused macro
Use templates for defining int typess
Const correctness
Use templates for const char * casts
Convert NEXT() and ARRAY_AFTER() macros to templates
Remove ArrayAfter, use StructAfter in place
Rename const_array() to array() (overloaded)
Further simplify IntType struct defs
Improve comment
Add comment
Add comment
Add more comments
Cleanup de-const-casting during sanitize
Rename ConstCharP to CharP (overloaded now)
More cast simplification
Change header comment
Simplify Lookup sanitize
Cosmetic
Rename const_sub_array to sub_array since all consts are implicit now
Watch for overflow in Array sanitize
Sanitize shallow in Lookup since the generic SubLookup has no methods
Simplify Extension offset now that our int types have no alignment
Improve Subst/Pos SubTable access and sanitize
Make sure semicolon is expected after DEFINE_NULL_DATA()
Make casts more explicit
Avoid overflow in TableDirectory sanitize
Remove unnecessary casts
Add coment
Don't sanitize raw table data
Remove integrity check in Tag sanitize
Minor
Add comment
Cleanup ContextFormat3 sanitize
Check for (impossible) overflow
Minor cleanup of sanitize
More sanitize cleanup
Fail sanitize on major version mismatch
Cleanup Extension sanitize()
Remove unused macro
Convert the last set of cast macros to templates
Cosmetic
Add comment re bsearch effect on sanitize
Cleanup Extension lookups
Properly define separate structs for TTCHeader and TTCHeaderVersion1
Cleanup OpenTypeFontFile
[blob] Fallback to copying if mprotect() fails
When sanitizing, delay making writable
No need to keep blob in sanitize context
Fix compile warnings (HB_GNUC_UNUSED)
Remove unused parameter
More warning fixes
Zero glyph metrics before calling user callback
Add TODO
Remove GET_FOR_DATA macros
Add different casts from pointer and ref to avoid bugs
Remove lock_instance()
Typo
Allow get_table() to return NULL
Cleanup hb_face_create_for_data()
Remove use of flexible arrays
Rename Var to Obj
Fix Device::get_size() calculation
[object] Actually handle malloc() failure
Fix debug build
Fix build. Ouch!
[blob] Make debug code always available to the compiler
Minor
[object] Make debug code always available to the compiler
Fix compiler warning about value unused
[gsubgpos] Make debug code always available to the compiler
[sanitize] Make debug code always available to the compiler
Simplify trace code
Further simplify tracing
[apply] Use a context object to reduce number of parameters passed around
Rename
Rename apply_context -> context
Add const
Use const_cast
Fix bug in hb_language_from_string()
Minor
Use BCP47 private-use tags for OpenType tag language string mapping
Make sure mirroring is done in original direction
[gdef] Implement getting contour point
[gdef] Fix rounding
[gdef] Fix delta scale
More contour point use
Convert to uppercase in hb_ot_tag_from_language()
[sanitize] Make debug code always available to the compiler
Define HB_FUNC for portability to non-gcc
Rename HB_GNUC_UNUSED -> HB_UNUSED
[ft] Disallow getting the entire font data with tag=0
[GPOS] Speedup apply_value()
Whitespace
Remove unused method
Merge remote branch 'jrmuizel/master'
Mark a couple functions as inline
Cosmetic: Rename HB_LIKELY/HB_UNLIKELY to likely/unlikely
Comment new SFNT tags
[main] Recognize Apple SFNTs
Make internal method private
Remove the NEUTER macro, move code to a method
Remove SANITIZE2
Remove SANITIZE_BASE2
Remove SANITIZE_THIS3
Cosmetic
Remove SANITIZE_THIS2
Remove SANITIZE_OBJ
Rename SANITIZE_BASE to SANITIZE_WITH_BASE
Remove SANITIZE_THIS
Make _hb_sanitize_*() methods of the context object
Use function template for pass-thru argument
Make sanitize_depth variable automatic and not passed through function args
Add hb_trace_t
Remove trace from sanitize_shallow()
Remove SANITIZE_ARG_DEF and SANITIZE_ARG
I keep changing my mind about this
Minor
Move layout_context into apply_context
Move buffer into apply_context
Move context_length into apply_context
Port apply to use hb_trace_t
Remove APPLY_ARG_DEF and APPLY_ARG
Simplify chaining
Minor
Minor
Cosmetic
Remove SANITIZE_ARRAY
Rename check to check_range
Remove SANITIZE_MEM
Remove SANITIZE_WITH_BASE
Cleanup Value casts
Remove SANITIZE macro
Remove the last of SANITIZE macros: SANITIZE_SELF
Start cleaning up get_size()
Simplify DEFINE_NULL_DATA
Whitespace
Cleanup ASSERT_SIZE_VAR
Remove ASSERT_SIZE in favor of the safer DEFINE_SIZE_STATIC
Cleanup
Further cleanup of DEFINE_SIZE
Make StructAtOffset take a pointer
Remove unnecessary casts
Remove CastP completely
Further cleanup of sizeof
Fix check_struct to check min_size instead of sizeof
Simplify array access
Minor
Cleanup DEFINE_SIZE_VAR2
Change DEFINE_SIZE_VAR to DEFINE_SIZE_ARRAY
Remove unused macro
Simplify unions
Fix accessing tables from NULL pointer
Fix comment
Don't fail sanitize on NULL data
Fix tracing order
Fix awful confusion between lookup format and subtable format
Clean up NO_INDEX
Fix warning
Shrink NullPool now that we have accurate size tracking
Remove excess sub_format sanitize
Remove a few likely()'s
Sprinkle a few strategic likely()'s
Fix warnings
Simplify likely() implementation
Add CONST_FUNC annotation
Simplify PairSet
Remove obsolete friend
Fix comment
Rename a few files to be C++ sources
Use bit tricks for HB_DIRECTION_IS_*
Add buffer->allocate_lig_id()
Hide internal symbols
Add check for internal symbols
Add buffer->swap()
Add a few other buffer methods
Make HB_PRIVATE more useful
Improve check for internal symbols
Minor
Add a few more buffer convenience methods
Don't use variable-length-arrays
s/\<context\>/c/g
Remove POSITION() and CURPOSITION() macros
Fix lookahead matching. Oops!
Remove OUT_GLYPH() and OUT_INFO() macros
Remove IN_COMPONENT() macro
Remove the IN_LIGID() macro
Remove the IN_MASK() macro
Remove the IN_CLUSTER() macro
Remove the IN_GLYPH() macro
Remove IN_INFO() and IN_NEXTGLYPH() macros
Remove the IN_CURINFO() macro
Remove the IN_CURGLYPH() macro
Remove the unused BUFFER macro
Merge buffer->out_pos and buffer->out_length
Shortening buffer accessors: rename buffer->in_string to buffer->info
Shortening buffer accessors: rename buffer->out_string to buffer->out_info
Shortening buffer accessors: rename buffer->positions to buffer->pos
Shortening buffer accessors: rename buffer->in_length to buffer->len
Shortening buffer accessors: rename buffer->out_length to buffer->out_len
Shortening buffer accessors: rename buffer->in_pos to buffer->i
Update buffer docs
Minor
Handle malloc failture in the buffer
Add an inline version of hb_buffer_ensure()
Indent
Minor
Add LONGDATETIME
Add 'head' table
Fix scale issues
Change hb_feature_t to keep tag/int instead of string
Apply user features
Invert the mask logic
Update always-apply mask from 0xFFFF to 1
Add lookup_map
Add _hb_bit_storage()
Apply user features to ranges!
Write hb_face_create_for_data() in terms of hb_face_create_for_tables()
get_table() is allowed to return NULL. Use that to simplify code
Do alternate glyph selection!
Remove unused operator
Fix delta scale, again...
Fix alternate off-by-one
Fix alternate, again
Let hb_face_get_table() return NULL if table not found
Add Python wrapper from Martin Hosken
Add hb_ot_tag_to_script()
Fix feature mask setting
Add Unicode 5.2 scripts
Speed up feature mask setting
Don't allocate bits for features not available
Add hb_tag_from_string()
Update the Python module
Import Graphite shaping backend by Martin Hosken
Fix warnings
Fix test failing
Move main shaper code into hb_ot_shape()
Graphite also forces us to link to libstdc++ currently
Simple renames
Fix Makefile to install hb-ot-shape.h
Add hb-ot-shape.h, oops.
Add note
Cleanup bitmask allocation
Add ltra, ltrm, and rtla features
Add rtlm
Add note
Add a few more standard features
Move mirroring around a bit
Move all callback functions in a vtable structs
Make sure we initialize all callbacks upon creation
Minor
Fix struct initializers
Merge remote branch 'martin/master'
Revert "Merge remote branch 'martin/master'"
Cypriot is RTL
Disable Graphite as it crashes all over the place...
Fix loop
Add note about UTF-8 decoder
Allow disabling default features
Towards a mask allocator
Simplify mask allocation
Fix global feature handling
Further simplify mask allocator
Minor
Make feature sorting stable
Fix skipping variation-selectors
Followup fix for variation-selectors
Fix header tags
Add a test for header preprocessor guards
Fix header
Remove useless TODO
Use bsearch where applicable
Don't bother sorting, it's a safe font error if the array is not sorted
Fix 64bit issues with debug prints
Mozilla bug 580233 - check for zero-length record in hb sanitizer.
Remove fixed TODO item
Add arm build fix to TODO
Add TODO option
Don't use "operator ="
dos2unix
Header dep cleanup
De-C++ where possible
Prefer C linkage
Add TODO items
Towards separating bit allocation from shaping
Minor
Logically separate feature allocation from application
Add TODO
[GPOS] Fix div-by-zero
Fix NULL dereference
Speedup Device table delta computation for common cases
Add TODO item
Fix blob refcounting with insane SFNT table directories
Fix hb_ot_layout leak
Add test.c using public API
Remove unimplemented method hb_font_get_funcs()
Add TODO iteam
Fix stupid bug in bsearch cmp function!
Add comment re DejaVu Sans Mono having 'dflt' script
Improve cmp function parameter namings and casts
One fewer cmp() implementation...
Don't zero glyph advances in MarkToBase and similar lookups
Pedantic
Avoid div-by-zero, validate upem
Minor
Add getters for all setter APIs
Add is_mutable() functions
Add API comments
Add TODO item
Add hb_face_get_upem()
Update build system
Add Arabic/Syriac/N'ko shaping logic
Add internal hb_ot_shape_context_t
Move table_tag to hb_ot_shape_context_t
Rename setup_lookups()
Call hb_ot_shape_setup_lookups_complex()
Add XXX note
Rename
Simplify compiling lookups
Minor
Move some more code around
Minor
Logically separate feature collection
Flip the OT bit-allocation vs gsub/gpos inside-out
Add private hb_segment_properties_t
Add hb-ot-map-private.hh
Add hb-ot-shape-private.hh
Minor cleanup
Fix feature overriding
Add hb-ot-map.cc
Improve checks
Rename hb_mask_allocator_t to hb_ot_map_t
Enable 'rtlm' mirroring
Minor
More separation
Fix missing negation in unreachable code!
Fix infinite loop!
Update Arabic shaping table to Unicode 6.0.0.
More refactoring
Refactor, in a different direction
Add hb_ot_shape_plan_t
Add hb_ot_complex_shaper_t stuff and start hooking Arabic shaper up
Add hb_ot_shape_execute()
Clear masks before setting them up, not after!
Form clusters before setting masks
Merge clearing masks and setting global masks
Hookup Arabic shaper!
Fix Arabic shaper
Step the version up to 0.2 now that Arabic shaper is in
Fix stupid bug, oops
Cleanup TODO
Add TODO item
Set user masks after complex masks
Fix applying default-value for features
Make sure feature values don't leak out of their mask
Return early if mask is 0
Make sure boolean features always use value=1
Oops, actually set global mask
Massage mask setting a bit more
Fix blob leak
Divide get_metrics into get_advance and get_extents
Oops, remove extra mask setting that broke complex shaping
Remove obsolete TODO item
Fix segfault with Arabic combining marks
Fix Cursive positioning
Rewrite Cursive joining to act more like other pair lookups
Remove unused macro
Remove LONGTERMTODO item that I'll never fix
Implement vertical support in get_lig_carets()
Rename hb_ot_layout_get_lig_carets() to hb_ot_layout_get_ligature_carets()
Remove more pointless LONGTERMTODO items
Clarify cursive_chain (and change its sign)
Supposedly implement vertical support in GPOS
Remove trailing comma
Add hb_var_int_t
Get rid of the OpenType-specific internal buffer representation
Remove comment
Set component=0 for ligature glyph
Always allocate new ligature id
Move setting lig_id/component out of buffer and to the gsub code
Minor renaming
More removal of lig-id code from buffer
More lig-id cleanup
More cleanup
Remove unused function
WIP removing external synthesized GDEF support and implementing it internally
Rename lookup_flags to lookup_props since it's more than just flags
Simplify mark skipping logic
Move some more code around
Move code around
Move buffer var allocation local
Move things around some more
Fix unreachable-code warning
Remove another couple lines of dead code
Fix a few more "unreachable code" warnings
Minor code shuffling
Pedantic
Add comment
More "unreached code" warning fixes
Save general category and combining class in the buffer for reuse
Add TODO item
Add XXX marks
Add TODO item
Change HB_SCRIPT_MEITEI_MAYEK to HB_SCRIPT_MEETEI_MAYEK
Add Unicode 6.0 scripts
Add OpenType script tags for Unicode 5.2 and Unicode 6.0 scripts
Update Arabic joining table to include Mandaic
Move generated table to its own file
Clarify copyright notice
Remove email address from Copyright headers
Fix failing checks
Adjust pyx files to reflect change from int to hb_var_int_t
Bug 31965 - some GNU/Linux distributions lack icu.pc but have icu-config
Fix arabic shaping of LTR text
Rename original_direction to target_direction
Mozilla Bug 618592 - freeze on typekit
Disallow ligature substitutions replacing one glyph
Update 'head' table to OpenType 1.6
Rename TableDirectory to TableRecord as per OpenType 1.6
Rename remaining metrics uses to extents
Annotate the Arabic joining table with block information
Reroute Mandaic shaping through the Arabic shaper
Bug 32274 - classic mongolian shaper
Docs
Remove Graphite backend
Fix ICU detection
Remove unused realloc
Fix ChanContext backtrack matching with GPOS
Fix 'make distcheck'
Don't use the m4/ dir
Fix language extension matching
Add initial hb-view tool
Default background color shall either be white or transparent
Fix possible overflow
[hb-view] Link with -lm
[hb-view] Handle write_to_png errors
Let hb_shape() guess script and direction...
Add script to/from ISO 15924 tag support
Sort options for clarity
[hb-view] Support --features
[hb-view] Add --debug
[hb-view] Use cached hb-ft face creation
[hb-view] Rewrite --features parsing, with range support
[hb-view] setlocale (LC_ALL, "")
Disable 'cswh' by default except for Arabic shaper
Update TODO items
Add test directory
Assert int types
Remove warning message from public header file
A few more ASSERTs
Add few more paratheses to the HB_TAG macro
Add an in-tree test suite
Rename HB_TAG_STR() to HB_TAG_CHAR4()
Move macros around
Build fix
Make hb_tag_from_string(NULL) return HB_TAG_NONE
Make HB_TAG_CHAR4 private
Rename hb_category_t to hb_unicode_general_category_t
[teset] Test hb_script_t
Make hb_language_from_string("") return NULL language
[test] Test hb_language_t
Fold hb-language.[ch] into hb-common.[ch]
[test] Actually hook up hb_script_t tests
Minor
[TODO] Add API item
[TODO] Add item re hb_buffer_resize()
[TODO] Add item re hb_buffer_reset()
[test] Test hb-buffer.h
[TODO] Add item re script iso15924 functions
[test] Add todo items
Minor
Add hb_buffer_reset() and hb_buffer_set_length()
[test] Add more TODO items
Make hb_language_t typesafe
[TODO] Remove done items
Cosmetic
[TODO] Remove done items
[API] Remove hb_buffer_clear()
Remove hb_buffer_clear_positions(), add hb_ot_layout_position_start()
Add hb_script_from_string()
Mark internal buffer variables private
[TODO] Add new item
Move enum types to hb-common.h
Change buffer default properties to invalid
[API] Use ISO 15924 tags for hb_script_t
[API] Add hb_buffer_allocation_successful()
[API] Rename hb_buffer_add_glyph() to hb_buffer_add()
Cosmetic
unicode: Cleanup implementation
Remove verbose comments
[glib] Add two-way script conversion functions
[icu] Add two-way script conversion functions
[test] Rename test-types to test-common
[API] blob: move user_data before destroy()
[API] font: move user_data before destroy()
[test] Add todo items
[test] Add test for headers included from C and C++
Minor
[OT] Fix script to ot-script-tag conversion
[API] Remove hb_*_get_reference_count()
[TODO] Remove done items
[API] Rename hb_face_get_table() to hb_face_reference_table()
[API] Make hb_face_reference_table() return empty blob instead of NULL
[TODO] Remove done items
Rename hb-blob.c to hb-blob.cc in preparation of more changes
Rename all private sources and headers to C++ files
Move hb_reference_count_t from macros to inline methods
[icu] Remove big script switch(), rely on reverse-lookup
[API] Allow negative font x_scale/y_scale
[TODO] Remove finished items
Cleanup hb_refrence_count_t
Add ASSERT_STATIC_EXPR macro
Remove obsolete comment
[hb-view] Accept numbers in feature tag name
Update Copyright headers
Move hb_reference_count_t to hb-private.h
Add hb_object_header_t which is the common part of all objects
Further simplify object handling
Don't return in void function
Add TODO item
Replace simple macros with inline functions for better type safety
[API] Add hb_unicode_funcs_get_default()
Make buffer size growth start from 32 instead of 8
[TODO] Add hb-view items
Rename hb-view.c and test.c to .cc files
[API] Add hb_direction_from/to_string()
GNOME Bug 612402 - (hb-arm) HarfBuzz compilation fix for arm
[object] Add tracing support back in
[blob] Use HB_FUNC instead of __FUNCTION__
[object] Remove unnecessary use of macros
Add initial implementation of user_data to objects
Move code around
[API] Add _set/get_user_data() for all objects
[test/buffer] Test reverse() and reverse_clusters()
[test/buffer] Test reset(), set_length(), and set/get_unicode_data()
[test/buffer] Add test pre_alloc(); hangs in the buffer code right now
[buffer] More error handling
Fix possible but improbable overflow in hb_array_t
[test/buffer] Test pre_allocate() and allocation_successful()
Desable possibly lethal test on 64-bit machines
Add _hb_unsigned_int_mul_overflows
[TODO] Remove finished items
[API Remove hb_font_funcs_copy()
Add test suite infrastructure
[test/buffer] Add initial utf-8 tests
[test/buffer] Add more extensive UTF-8 test data from glib
[test/buffer] Add UTF-16 tests
[test/unicode] Use text fixture instead of static variables
[test/unicode] Test is/make_immutable()
[test/unicode] Add testing of all unicode properties
Minor
[test/unicode] Add log messages
ISO 15924 fixes
[icu] Make sure we return script UNKNOWN instead of INVALID
Minor
[test/buffer] Clean up testing
[test/unicode] Test Unicode 5.2+ but don't fail
[test/unicode] Port the _custom test to test all property setters
[test/unicode] Better test chainup
[test/unicode] Add script roundtrip tests for glib and ICU
[unicode] Make _get_parent() return _nil object instead of NULL
Cosmetic
[buffer] Fail in _create() if we cannot pre-allocate the requested size
[face] Return nil face if blob is inert
[API] Rename hb_blob_create_empty() to hb_blob_get_empty()
Cosmetic
[test/object] Add test for object lifecycle stuff
[object] Fix bug in get_user_data() implementation
Fix bug in map implementation
Fix bug in array growth implementation
Protect NULL in a couple places
[API] Make hb_font_create() take a face and reference it
Cosmetic
Add hb_mutex_free() and use it
Implement win32 thread-safety stuff
[blob] Implement sub_blob() in terms of create()
Refactor to keep hb-object-private.h and hb-open-type.h separate
Move Win32 thread-safety stuff to hb-object-private.h
[ft] Fix font->face handling
Move code around
Add hb_static_mutex_t
Make hb_mutex_*() macros take a pointer
Make array/map implementation more generic
Replace hb_map_t with hb_set_t which is more intuitive and flexible
Minor
Replace fixed-size feature_infos array with hb_array_t
Replace fixed-size feature_maps array with hb_array_t
Replace fixed-size lookup_maps array with hb_array_t
[TODO] Remove done items
Move code around
Use hb_array_t for hb_language_t mapping
Add hb_threadsafe_set_t
Use threadsafe set implementation for hb_language lookups
Shrink code
Make user_data access threadsafe
[buffer] Remove wrong optimization
Fix build with older glib
Add AC_CANONICAL_HOST
Remove win32-dll libtool flag
Add disable-static libtool flag
[API] Add version macros and functions
[API] Add hb_language_get_default()
Add note re deadlocks
Remove unused hb_blob_try_writable_inplace()
[TODO] Update
Add -Bsymbolic-functions to linker flags
[API] Simplify blob API, remove lock
[test] Test blob API
[test/blob] Add create_sub_blob()
[test/blob] Fix bug in test
Add DOAP file
[test/object] Test user_data with destroy() callback that calls user_data
[test] Always initialize gthread such that our mutex() stuff is tested
Fix set implementation to be truly threadsafe even with destroy() callbacks
Remove duplicate atomic_int implementation
Fix build without mutex
Add hb_font_make/is_immutable()
[API] Remove broken-by-design hb_font_unset_funcs()
[font] Fix internal sign of x/y_scale
[API] Add hb_font_create_sub_font() and hb_font_get_parent()
[API] Remove font_funcs func getter functions
Whitespace
[API] Pass down closure user_data to font funcs
Make default font-funcs chain-up to the parent
Remove hb_ot_layout_context_t, simplify code
Minor
[font] Do user-space conversion when chaining up to parent font
[API] Change signature of get_contour_point and get_kerning ffuncs
Minor
Add maxp table
Minor
[unicode] Simplify method setting
Plug leaks
Plug more leaks
Minor
[API] Add HB_UNTAG()
[API] Add hb_*_get_empty() for all objects
[TODO] Update
[test] Add tests for _get_empty() funcs
Remove unused hb_mutex_trylock()
Streamline mutex stuff
Free static mutex'es
Fix compile with no mutex available
Minor
Use constructor/destructor for hb_ot_shape_plan_t
Remove hb_static_threadsafe_set_t
Remove unused hb_set_t
[API] Add hb_ot_layout_substitute_start/finish()
[API] Rename hb_face_create_for_data() to hb_face_create()
[test/font] Start adding tests for hb-font.h
[test/font] Add test_font_properties()
[test/font] Test get_face() / get_parent()
[test/font] More get_empty() tests
[test/font] More tests
[test/font] More tests
[API] Remove const from font user_data
[API] Pass face to get_table()
[test/font] Test more
[test/font] Test empty funcs
[test/font] Test font_funcs subclassing
Fix font subclass chainup
[TODO] Update
[object] Make object inert during destruction
[test/shape] Add simplest test for hb_shape()
[test/blob] Use MAP_ANON instead of MAP_ANONYMOUS
[test] Add test-shape.c. Oops
Rename get_kernings() arguments from first/second_glyph to left/right_glyph
[test/shape] Check shape output
[API] Make get_glyph() callback return a boolean
Finish off previous change
[API] Add hb_face_make/is_immutable()
[TODO] Add items
[test/test-ot-tag] Test hb-ot-tag.h, fix many bugs
[API] Add HB_LANGUAGE_INVALID
[test/ot-tag] More tests
[test/buffer] Add more tests for nil buffer
Minor
[hb-view] No need to allocate an extra glyph item at the end
[hb-view] Start work on vertical support
Remove unnecessary TODO item
Cosmetic
Check for mmap()
Minor
[API] Add support for vertical text
[API] Vertical support, take 2
Minor
Cosmetic
Vertical: Adjust origin in glyph_extents() and glyph_contour_point()
[hb-view] Add --annotate
More vertical
[Vertical] GPOS is always done with horizontal origin
[Vertical] Do fallback origin calculation
[Vertical] Fix GPOS y-advance direction
[Vertical] GPOS x/y advance adjustments only apply in hori/vert respectively
[TODO] Update
[Vertical] fix vertical gpos
[test] Update to API changes
[API] One last font-funcs API change
[TODO] Add item
Update README, etc
Add libtool versioning
[test/version] Test hb-version.h
[test] Add test-symbols that checks API symbol text coverage
[test] Switch to automake-based test-runner
[test/unicode] Fix double-free
Hide internal symbols
[test] Rename test-symbols to check-symbols
[test-common] Test hb_direction_to_string()
Release 0.6.0. First official tarball release!
Bradley Grainger (1):
Fix #pragma message for MSVC.
Darin Adler (1):
Remove stray semicolon.
Eric Mader (3):
Add modules modules/indic/indic-xft.c, indic-ot.c, indic-ot.h,
Don't fail when reading an empty script.
Correctly handle back, new_advance.
Hans Breuer (3):
moved pango_fc_* to the latter where they live on *nix too.
if PANGO_MODULE_PREFIX is defined include the basic backend shaper (should
updated
Havoc Pennington (1):
header to abstract the difference between FreeType 2.0.3 and 2.0.4 error
James Henstridge (1):
make similar changes to the ones on glib head (call gtk-docize, etc).
Javier Jardón (1):
Bug 31174 - Update autotools configuration
Jeff Muizelaar (2):
Include the tags from the Apple specification for TrueType fonts
HB_UNUSED is unneeded on static inline functions
Manish Singh (1):
Get rid of unnecessary casts for g_object_{ref,unref}
Martin Hosken (8):
Rename classes from Grxxx to HbGrxxx
Rename Grxxx to HbGrxxx
Add graphical output to hbtestfont
Merge branch 'master' of git://git.freedesktop.org/~behdad/harfbuzz-ng
Add fontconfig to hbtestfont
Tidy up hbtestfont and add README
hb-graphite now no longer has -ve advances within clusters. Fix infinite loop in tag_to_script(). python fixed to use tag_to_script and allow hbtestfont to be passed font files, where fontconfig knows about them.
Fixes to Python and Graphite from Martin
Matthias Clasen (2):
Remove declarations of unimplemented functions
Add docs.
Owen Taylor (68):
Since Xft may only be available statically without shlib deps, check for
Release 0.14
Remove excess call to DONE_Stream left over from conversion from FT1.
Use ISO C99 varargs when available.
Up to 0.19.
Uncomment GPOS parts.
In Load_ChainContextSubst2, handle the case where an empty class
Add compatibility defines for changes in FreeType 2.1.0.
Fix acess outside of a loaded frame and some memory leaks on failure.
on Jun 3 18:56:09 2002 Owen Taylor <otaylor at redhat.com>
Offset to MarkAttachClassDef is offset to table, not offset to offset to
Start of merges from freetype1 of OpenType fixes.
ligatures can be also used in MarkBasePos lookups. (2001-03-17 Werner
Export TT_New_GDEF_Table to create an empty GDEF table.
Up the FreeType version requirement to 2.0.9. (2.2.1 had a compilation
Add an --enable-debug configure argument defaulting to 'yes' for unstable
Fix infinite loop in the case where the charmap contains a character >
Fix confusion between boolean and FT_Error return. (#108358, Noah Levitt)
Fix mispelled constant from last commit.
When loading in Load_Chain{Sub,Pos}ClassRule, the limit we have only
More careful handling of face->charmap; if is NULL, try to set a unicode
Fix uses of g_assert() around statements with side effects. (#115498,
Improvements to OpenType-dumping code, based on changes in Qt by Lars
Fix a couple of places where TTO_Err_Not_Covered wasn't considered a
Add GPOS_LOOKUP_EXTENSION, GSUB_LOOKUP_EXTENSION, which allow lookup
Update of GPOS and GSUB support to OpenType 1.3 (From FreeType, Werner
OpenType-1.4 update: backtrack information is stored with the item closest
Fix some FreeType1 variable declarations that snuck in from the last
If applying a ligature lookup makes adjacent two glyphs that were not
Fix additional places where TTO_Err_Not_Covered wasn't considered a
Fix various memory leaks from error returns that should have been jumps to
Move allocation afer initial checks, fixing memory leak.
Fix confusion between boolean and FT_Error return. (GSUB equivalent of fix
Fix return value to only contain TTO_Err_Not_Covered if *no* lookups
Check for lookahead glyphs in the right place. (Patch from #116860)
Revert back out the FreeType patch preventing ligatures of not-originally
Rewrite handling of IGNORE_SPECIAL_MARKS to be properly "ignore marks of
Add some macro definitions for gcc-3.3 that suppress the bogus
pango/opentype/ftxgsub.c (Lookup_ChainContextSubst3) Fix problems where
Fix gcc-3.3 versions of macros to have the right return value.
Switch over to recommended Freetype system of include ft2build.h then
Suport CFF fonts as well. (#131202, Manjunath Sripadarao)
Memory leak fixes from Masatake YAMATO, #130652
Sign convention for y offsets is opposite between PangoGlyphString and FT
Rework opentype interfaces and other changes to make GPOS work for Arabic.
=== Released 1.4.0 ===
Free buffer->positions, clean up error returns that were returning
Revert error return changes from last commit.
Use the gcc-3.3 strict-aliasing compatible macros from fterrcompat.h
#143693, Sayamindu Dasgupta
Fix pervasive buffer overruns when skipping glyphs when matching contexts.
Add support for ChainContextSubstFormat3.
Make Check_Property() take a OTL_GlyphItem, add a gproperties field to
Match backtrack context against the output glyphs not the input glyphs
Add missing macro to make the last change actually compile.
Remove the unused parameter from the IN_CURITEM() and IN_CURGLYPH macros.
Fix allocation and indexing in NewGlyphClasses array. (#130661, Masatake
Save the order in which features were added and use that when applying
Finish extending properties flags from FT_UShort => FT_UInt. (OTLBuffer
=== Released 1.6.0 ===
Cleanups from 'sparse', #149922, Kjartan Maraas
Set G_LOG_DOMAIN.
For all binary searches, handle the case where the number of items is 0.
Chain up from finalize. (#307547, Paolo Borelli)
Fix up places where there is missing or incomplete Copyright and License
Patch from David Turner. Review and testing by Behdad Esfahbod
Remove an unecessary set of block2.
Skip lookups with lookup index out of range. (Patch from Behdad Esfahbod,
Ryan Lortie (3):
[API} hb_buffer_get_glyph_{infos,positions}: Add length out parameter
[API] Rename hb_buffer_ensure() to hb_buffer_pre_allocate()
[API] unicode: rework virtual functions for subclassing
Sebastian Wilhelmi (2):
Resuming aborted commit
Do not add GLIB_CFLAGS to CFLAGS.
Theppitak Karoonboonyanan (1):
Negate y offset according to different conventions between
Tor Lillqvist (4):
Only a script engine here.
pango/makefile.mingw.in pango/mini-fribidi/makefile.mingw Remove. Not
Remove. Not used. (A static library is built here. Exported entries are in
Rename LDADDS to libpango_ot_la_LIBADD to actually make libpango-ot.la
More information about the HarfBuzz
mailing list