graphite: Update to upstream commit 80c52493e
80c52493ef
Includes a fix for inaccurate slice range calculation for bases with diacritics.
Also removes unnecessary ChangeLog, and updated unrelated vhacd commit to match
currently used one.
This commit is contained in:
parent
b452005c5c
commit
d1360895ee
3 changed files with 11 additions and 244 deletions
8
thirdparty/README.md
vendored
8
thirdparty/README.md
vendored
|
@ -176,14 +176,14 @@ Files extracted from upstream source:
|
||||||
## graphite
|
## graphite
|
||||||
|
|
||||||
- Upstream: https://github.com/silnrsi/graphite
|
- Upstream: https://github.com/silnrsi/graphite
|
||||||
- Version: 1.3.14 (92f59dcc52f73ce747f1cdc831579ed2546884aa, 2020)
|
- Version: 1.3.14 (80c52493ef42e6fe605a69dcddd2a691cd8a1380, 2021)
|
||||||
- License: MPL-2.0
|
- License: MPL-2.0
|
||||||
|
|
||||||
Files extracted from upstream source:
|
Files extracted from upstream source:
|
||||||
|
|
||||||
- the `include` folder
|
- the `include` folder
|
||||||
- the `src` folder
|
- the `src` folder (minus `CMakeLists.txt` and `files.mk`)
|
||||||
- `COPYING`, `ChangeLog`
|
- `COPYING`
|
||||||
|
|
||||||
|
|
||||||
## harfbuzz
|
## harfbuzz
|
||||||
|
@ -610,7 +610,7 @@ Files extracted from upstream source:
|
||||||
## vhacd
|
## vhacd
|
||||||
|
|
||||||
- Upstream: https://github.com/kmammou/v-hacd
|
- Upstream: https://github.com/kmammou/v-hacd
|
||||||
- Version: git (b07958e18e01d504e3af80eeaeb9f033226533d7, 2019)
|
- Version: git (1a49edf29c69039df15286181f2f27e17ceb9aef, 2020)
|
||||||
- License: BSD-3-Clause
|
- License: BSD-3-Clause
|
||||||
|
|
||||||
Files extracted from upstream source:
|
Files extracted from upstream source:
|
||||||
|
|
238
thirdparty/graphite/ChangeLog
vendored
238
thirdparty/graphite/ChangeLog
vendored
|
@ -1,238 +0,0 @@
|
||||||
1.3.14
|
|
||||||
. Bug fixes
|
|
||||||
. Allow features to be hidden (for aliases)
|
|
||||||
. Move to python3
|
|
||||||
. Rename doc files from .txt to .asc
|
|
||||||
|
|
||||||
1.3.13
|
|
||||||
. Resolve minor spacing issue in rtl non-overlap kerning
|
|
||||||
. python3 for graphite.py
|
|
||||||
. Better fuzzing
|
|
||||||
. Better building on windows
|
|
||||||
|
|
||||||
1.3.12
|
|
||||||
. Graphite no longer does dumb rendering for fonts with no smarts
|
|
||||||
. Segment caching code removed. Anything attempting to use the segment cache gets given a regular face instead
|
|
||||||
. Add libfuzzer support
|
|
||||||
. Builds now require C++11
|
|
||||||
. Improvements to Windows 64 bit builds
|
|
||||||
. Support different versions of python including 32 bit and python 3
|
|
||||||
. Various minor bug fixes
|
|
||||||
|
|
||||||
1.3.11
|
|
||||||
. Fixes due to security review
|
|
||||||
. Minor collision avoidance fixes
|
|
||||||
. Fix LZ4 decompressor against high compression
|
|
||||||
|
|
||||||
1.3.10
|
|
||||||
. Address floating point build parameters to give consistent positioning results across platforms
|
|
||||||
. Various bug fixes
|
|
||||||
|
|
||||||
1.3.9
|
|
||||||
. Add Collision COLL_ISSPACE to allow for visible spaces in collision avoidance
|
|
||||||
. Add segment and pass direction information to tracing output
|
|
||||||
. Bug fix rule length testing in 32-bit
|
|
||||||
. Increase slanted margin distances for collision avoidance
|
|
||||||
. Change kerning algorithm to simple outline expansion. Seems to make no visible difference.
|
|
||||||
. Add trace2svg to test tools
|
|
||||||
|
|
||||||
1.3.8
|
|
||||||
. Various bug fixes arising from fuzzing
|
|
||||||
. Fix regression that stopped piglatin from working
|
|
||||||
. Make collision avoidance kerning give more regular results
|
|
||||||
. Minor modification to clustering algorithm to handle variable width chars
|
|
||||||
|
|
||||||
1.3.7
|
|
||||||
. Bug fixes
|
|
||||||
. Start to deprecate SegCache. This will be going away in a later release.
|
|
||||||
|
|
||||||
1.3.6
|
|
||||||
. Bug fixes
|
|
||||||
|
|
||||||
1.3.5
|
|
||||||
. Bug fixes
|
|
||||||
. Security bug fix
|
|
||||||
. Fix ARM misalignment problem
|
|
||||||
. Track latest cmake
|
|
||||||
|
|
||||||
1.3.4
|
|
||||||
. Transition from Mercurial to Git
|
|
||||||
. Bug fixes
|
|
||||||
. Fix Collision Kerning ignoring some diacritics
|
|
||||||
. Handle pass bits 16-31 to speed up fonts with > 16 passes
|
|
||||||
. Various minor fuzz bug fixes
|
|
||||||
. Make Coverity happy
|
|
||||||
. Add GR_FALLTHROUGH macro for clang c++11
|
|
||||||
|
|
||||||
1.3.3
|
|
||||||
. Slight speed up in Collision Avoidance
|
|
||||||
. Remove dead bidi code
|
|
||||||
. Bug fixes
|
|
||||||
. Between pass bidi reorderings and at the end
|
|
||||||
. Decompressor fuzz bugs
|
|
||||||
. Other fuzz bugs
|
|
||||||
|
|
||||||
1.3.2
|
|
||||||
. Remove full bidi. All segments are assumed to be single directioned.
|
|
||||||
. Bug fixes:
|
|
||||||
. Decompressor corner cases
|
|
||||||
. Various fuzz bugs
|
|
||||||
|
|
||||||
1.3.1
|
|
||||||
. Deprecation warning: Full bidi support is about to be deprecated. Make contact
|
|
||||||
if this impacts you.
|
|
||||||
. Change compression block format slightly to conform to LZ4
|
|
||||||
. Bug fixes:
|
|
||||||
. Handle mono direction text with diacritics consistently. Fonts
|
|
||||||
now see the direction they expect consistently and bidi now
|
|
||||||
gives expected results.
|
|
||||||
. Fixed lots of fuzz bugs
|
|
||||||
. Coverity cleanups
|
|
||||||
. Build now works for clang and/or asan and/or afl etc.
|
|
||||||
|
|
||||||
1.3.0
|
|
||||||
. Add collision avoidance
|
|
||||||
. Shift Collider
|
|
||||||
. Kern Collider
|
|
||||||
. Octabox outlines and subboxes
|
|
||||||
. Add compressed Silf and Glat table support
|
|
||||||
. Bug fixes:
|
|
||||||
. Stop loops forming in the child, sibling tree
|
|
||||||
. Handle bidi mirroring correctly if no bidi occurring
|
|
||||||
|
|
||||||
1.2.4
|
|
||||||
. Face failure now has error code reporting via debug logging
|
|
||||||
. can now call gr_start_logging(NULL, fname)
|
|
||||||
. gr2fonttest --alltrace added
|
|
||||||
. Format 14 table support
|
|
||||||
. Not done. To be handled entirely in the compiler
|
|
||||||
. Bidi support for Unicode 6.3 Isolating direction controls
|
|
||||||
. Fonts no longer require a glyf/loca table. In such cases the bounding box is always 0.
|
|
||||||
. Clang ASAN build support added for testing.
|
|
||||||
. Handle out of memory sanely.
|
|
||||||
. Documentation improvements
|
|
||||||
. Bug fixes:
|
|
||||||
. Enforce fonts having to store glyph attributes by monotonically increasing attribute number
|
|
||||||
. zeropadding was not getting called on feature tags
|
|
||||||
. automatic associations for unassociated characters
|
|
||||||
. use direct engine on Mac
|
|
||||||
. various extreme case reading 1 past the end errors fixed
|
|
||||||
. remove tabs from sources so that it becomes readable again
|
|
||||||
|
|
||||||
1.2.3
|
|
||||||
. Bug fixes only:
|
|
||||||
. fix byte swapping when testing cmap subtable lengths
|
|
||||||
. work around armel compilation problems with conditional operators
|
|
||||||
. fix pseudoglyph support for advance and bbox
|
|
||||||
|
|
||||||
1.2.2
|
|
||||||
. Add support for passKeySlot (makes Charis 2x faster) up to 32 passes
|
|
||||||
. Add telemetry output to json if enabled in build GRAPHITE2_TELEMETRY
|
|
||||||
. Shrink font memory footprint particularly in the fsm
|
|
||||||
. Add -S to comparerenderer
|
|
||||||
. Bug fixes:
|
|
||||||
. Fix shift.x being reversed for rtl text
|
|
||||||
. Fix faulty fallback justification
|
|
||||||
. Fix bad cmap handling
|
|
||||||
. Support compiling on old Solaris where bidi attributes clash with register names
|
|
||||||
. Follow the crowd in using Windows.h
|
|
||||||
|
|
||||||
1.2.1
|
|
||||||
. Bug fixes:
|
|
||||||
. Allow glyph reattachment
|
|
||||||
. Allow signed glyph attributes
|
|
||||||
. Various build problems with MacOS, old gcc versions, etc.
|
|
||||||
. Various overrun read errors fixed
|
|
||||||
|
|
||||||
1.2.0
|
|
||||||
. API Changes:
|
|
||||||
. Added Windows friendly gr_start_logging and gr_stop_logging, now per face
|
|
||||||
. Added gr_make_face_with_ops, gr_make_face_with_seg_cache_and_ops
|
|
||||||
. Added gr_make_font_with_ops
|
|
||||||
. Added gr_face_is_char_supported
|
|
||||||
. Added gr_face_info to give info to apps about face capabilities
|
|
||||||
. Deprecated gr_make_face, gr_make_face_with_seg_cache, gr_make_font_with_advance_fn
|
|
||||||
. Deprecated graphite_start_logging and graphite_stop_logging
|
|
||||||
. These functions are stubbed now and do nothing, but do compile and link.
|
|
||||||
. Bump API version to 3
|
|
||||||
. Add C# wrapper to contrib
|
|
||||||
. Handle justification information in a font and do something useful with it
|
|
||||||
. Builds clang clean (has done for a while)
|
|
||||||
. Bug fixes
|
|
||||||
. Windows build and bug fixes
|
|
||||||
. Add extra information to json debug output
|
|
||||||
. Added windows build documentation
|
|
||||||
. Added freetype sample code and test
|
|
||||||
|
|
||||||
1.1.3
|
|
||||||
. Default build has GRAPHITE2_COMPARE_RENDERER to OFF to reduce dependencies
|
|
||||||
. Builds on Mac with clang
|
|
||||||
. Debug output improvements
|
|
||||||
. Tidy up perl wrappers
|
|
||||||
. Fuzz tester improvements
|
|
||||||
. Various bug fixes for bad font handling
|
|
||||||
|
|
||||||
1.1.2
|
|
||||||
. Support feature ids < 4 chars when space padded for inclusion in FF 14.
|
|
||||||
. More fuzztesting and removal of causes of valgrind bad reads and sigabrts
|
|
||||||
. Remove contrib/android into its own repo (http://hg.palaso.org/grandroid)
|
|
||||||
. Update comparerenderer to latest harfbuzzng api
|
|
||||||
|
|
||||||
1.1.1
|
|
||||||
. Missing Log.h included
|
|
||||||
. perl wrappers updated
|
|
||||||
|
|
||||||
1.1.0
|
|
||||||
. Refactored debug output to use json
|
|
||||||
. Renamed VM_MACHINE_TYPE to GRAPHITE2_VM_TYPE
|
|
||||||
. Renamed DISABLE_SEGCACHE to GRAPHITE2_NSEGCACE
|
|
||||||
. Renamed DISBALE_FILE_FACE to GRAPHITE2_NFILEFACE
|
|
||||||
. Renamed ENABLE_COMPARE_RENDERER to GRAPHTIE2_COMPARE_RENDERER
|
|
||||||
. Renamed DOXYGEN_CONFIG to GRAPHITE2_DOXYGEN_CONFIG
|
|
||||||
. Renamed GR2_CUSTOM_HEADER to GRAPHITE2_CUSTOM_HEADER
|
|
||||||
. Renamed GR2_EXPORTING to GRAPHITE2_EXPORTING
|
|
||||||
. Added GRAPHITE2_STATIC for static only builds
|
|
||||||
. Added GRAPHITE2_NTRACING to compile out tracing code
|
|
||||||
. Documented GRAPHITE2_{EXPORTING,STATIC,NTRACING} in hacking.txt
|
|
||||||
. Bump libtool version to 2.1.0
|
|
||||||
. dumb font rendering works
|
|
||||||
. slot user attributes are now signed rather than unsigned
|
|
||||||
. add support for long class maps
|
|
||||||
. Rename perl library to avoid nameclash on Windows
|
|
||||||
. Various robustness fixes
|
|
||||||
. Moved internal .h files into src/inc
|
|
||||||
. Parallelise fuzztest
|
|
||||||
. General build improvements, particularly on Windows
|
|
||||||
|
|
||||||
1.0.3
|
|
||||||
. Fix UTF16 surrogate support
|
|
||||||
. script and lang tags may be space padded or null padded
|
|
||||||
. Remove need for WORDS_BIGENDIAN, do it all automatically
|
|
||||||
. Remove all #include <new>. Use CLASS_NEW_DELETE instead.
|
|
||||||
. Fix comparerenderer to work with current hbng
|
|
||||||
. Add valgrind to fuzztest to ensure good memory use at all times
|
|
||||||
. Fix new fuzztest exposed bugs.
|
|
||||||
. Fix bugs exposed by Mozilla security review
|
|
||||||
. Add continuous integration build on Windows support
|
|
||||||
|
|
||||||
1.0.2
|
|
||||||
. Fix Windows build
|
|
||||||
. Comparerenderer uses hbng enforcing ot rendering
|
|
||||||
. Add Bidi .hasChar support and refactor mirroring code
|
|
||||||
. Make cmake default Release rather than debug
|
|
||||||
. Don't compile in a boat load of TtfUtil that isn't used, saving 15% of binary
|
|
||||||
. Chase the FSF around its latest office moves
|
|
||||||
. WORDS_BIGENDIAN is set at the top so tests now pass on ppc, etc.
|
|
||||||
. More words in the manual
|
|
||||||
|
|
||||||
1.0.1
|
|
||||||
. Release is the default build in cmake now.
|
|
||||||
. Refactor cmake build to not rebuild things so much.
|
|
||||||
. Include a missing file
|
|
||||||
. Remove -nostdlibs, making gcc happy everywhere
|
|
||||||
. Update comparerenderer to latest hbng interface
|
|
||||||
. Add changelog
|
|
||||||
|
|
||||||
1.0.0
|
|
||||||
. First major release of perfect code!
|
|
||||||
|
|
9
thirdparty/graphite/src/Pass.cpp
vendored
9
thirdparty/graphite/src/Pass.cpp
vendored
|
@ -1056,12 +1056,17 @@ float Pass::resolveKern(Segment *seg, Slot *slotFix, GR_MAYBE_UNUSED Slot *start
|
||||||
ymin = min(by + bbb.bl.y, ymin);
|
ymin = min(by + bbb.bl.y, ymin);
|
||||||
for (nbor = slotFix->next(); nbor; nbor = nbor->next())
|
for (nbor = slotFix->next(); nbor; nbor = nbor->next())
|
||||||
{
|
{
|
||||||
if (nbor->isChildOf(base))
|
|
||||||
continue;
|
|
||||||
if (!gc.check(nbor->gid()))
|
if (!gc.check(nbor->gid()))
|
||||||
return 0.;
|
return 0.;
|
||||||
const Rect &bb = seg->theGlyphBBoxTemporary(nbor->gid());
|
const Rect &bb = seg->theGlyphBBoxTemporary(nbor->gid());
|
||||||
SlotCollision *cNbor = seg->collisionInfo(nbor);
|
SlotCollision *cNbor = seg->collisionInfo(nbor);
|
||||||
|
const float nby = nbor->origin().y + cNbor->shift().y;
|
||||||
|
if (nbor->isChildOf(base))
|
||||||
|
{
|
||||||
|
ymax = max(nby + bb.tr.y, ymax);
|
||||||
|
ymin = min(nby + bb.bl.y, ymin);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
if ((bb.bl.y == 0.f && bb.tr.y == 0.f) || (cNbor->flags() & SlotCollision::COLL_ISSPACE))
|
if ((bb.bl.y == 0.f && bb.tr.y == 0.f) || (cNbor->flags() & SlotCollision::COLL_ISSPACE))
|
||||||
{
|
{
|
||||||
if (m_kernColls == InWord)
|
if (m_kernColls == InWord)
|
||||||
|
|
Loading…
Reference in a new issue