src


Log

Author Commit Date CI Message
Behdad Esfahbod d45f240e 2018-02-09T15:51:45 Typo
Behdad Esfahbod 3b7aa651 2018-02-09T15:43:20 [docs] Improve UNSAFE_TO_BREAK docs
bungeman 671f0a77 2018-02-01T13:31:25 Documentation for HB_GLYPH_FLAG_UNSAFE_TO_BREAK. HB_GLYPH_FLAG_UNSAFE_TO_BREAK means that the glyph with this flag is somehow affected by the previous logical glyph (the previous index in the buffer if ltr and the next index if the buffer is rtl). If these two glyphs are separated by a break (line or otherwise) then the underlying text should be re-shaped on both sides up to corresponding position in the text of some glyph not marked with this flag.
Behdad Esfahbod 9682ef13 2018-02-08T17:35:57 Minor fixups
Garret Rieger f9c665fe 2018-02-07T16:53:18 Update interface to hb-subset-glyf to subset glyf and loca.
Garret Rieger 217ed5e3 2018-02-07T16:30:07 Cleanups in hb-subset-glyf and hb-subset-plan.
Garret Rieger 42234424 2018-02-08T15:11:15 Fix include gaurds and include order in hb-subset-glyf and hb-subset-plan
Rod Sheeter 13193a9b 2018-02-07T16:09:52 move to the hb_face_t dest pattern
Rod Sheeter 0859a006 2018-02-07T15:59:36 sketch a subset<T> and call it for cmap. Add subset to cmap, albeit not working even for the msot basic case just yet
Garret Rieger 8e9fd6f1 2018-02-07T19:01:21 Implement basic loca (long version only) subsetting.
Behdad Esfahbod c1ab95dd 2018-02-08T17:22:07 Fix overflow in space fallback shaping Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=657466
Behdad Esfahbod b220b5a4 2018-02-08T17:14:52 Avoid undefined-behavior in fallback mark positioning Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=5584
Behdad Esfahbod 3b68a03a 2018-02-08T17:00:37 [fuzzer] Minor
Behdad Esfahbod 5021ba2a 2018-02-08T15:11:28 [aat] Minor
Behdad Esfahbod 77ad8b5c 2018-02-07T21:54:33 TODO
Behdad Esfahbod 941bbd9f 2018-02-07T21:49:01 [subset] Fix thinko
Behdad Esfahbod 931f8b7e 2018-02-07T21:42:03 Fix another thinko
Behdad Esfahbod 39b86695 2018-02-07T21:37:03 [subset] Fix thinko
Behdad Esfahbod eeffabc8 2018-02-07T21:34:05 Build
Behdad Esfahbod c479a599 2018-02-07T21:13:10 [subset] Assemble font
Behdad Esfahbod 34ac3548 2018-02-07T18:07:45 [set] Respect stride Ouch!
Behdad Esfahbod 577becaf 2018-02-07T17:38:40 [subset] Fixup
Behdad Esfahbod c9acab3c 2018-02-07T17:12:55 Whitespace
Behdad Esfahbod 7fd0b61d 2018-02-07T16:44:52 [subset] Create new face and copy all tables to it test-subset fails now because subset-face does not know how to compile itself.
Garret Rieger 4e1abe2c 2018-02-07T13:28:11 Refactor subset glyf to remove multiple calls to glyf.fini()
Garret Rieger 0a5d1440 2018-02-07T13:09:54 Add implementation of glyf subsetting.
Garret Rieger 05d65baa 2018-02-07T10:55:30 Extract glyf offset calculation into it's own method.
Behdad Esfahbod 6d7c6e19 2018-02-07T14:09:56 Fix two undefined-behavior issues Fixes https://github.com/harfbuzz/harfbuzz/issues/761 Fixes https://github.com/harfbuzz/harfbuzz/issues/762
Behdad Esfahbod b87cbe2b 2018-02-07T14:11:26 Try fixing build for platforms that have no visibility attributes
Behdad Esfahbod 6804b61d 2018-02-07T13:47:35 [subset] Add hb_subset_face It's a hb_face_t that has add_table() and in the future knows how to compile itself into a font blob.
Behdad Esfahbod af02812f 2018-02-07T13:07:46 [subset] Change hb_subset API to remove hb_subset_face_t
Behdad Esfahbod 2da0d87e 2018-02-07T12:44:35 Remove NullPool visibility hack We keep a separate private NullPool in libharfbuzz-subset.so This can fire back later since now there are two separate null objects, and comparisons to the null pool can be confused. Something to deal with when it comes up. Ouch!
Rod Sheeter b95aa204 2018-02-07T09:37:06 glyph ids to retain should most likely keep the glyph id not the codepoint
Rod Sheeter 91428713 2018-02-07T09:35:59 Remove \ns leftover from fprintf
Rod Sheeter eb485bb9 2018-02-07T09:32:36 Horrid hack to assign new gids. Use DEBUG_MSG over fprintf
Rod Sheeter 8b80cbb1 2018-02-07T09:31:31 Add a subset debug category
Behdad Esfahbod ee433d36 2018-02-07T12:30:18 [aat] Set debug lookup_index
Rod Sheeter 38df1ec8 2018-02-07T07:58:58 TEMPORARY: remove HB_INTERNAL from null pool so subset builds again
Garret Rieger 53aa0e95 2018-02-06T17:05:22 Add an instance of glyf::accelerator_t to hb-subset-glyf.
Rod Sheeter ef62dfed 2018-02-06T17:12:17 add back assert_pod
Rod Sheeter d0ce3c66 2018-02-06T16:58:35 Resolve codepoints:glyph ids. Does not compile; undefined reference to OT::_hb_NullPool
Garret Rieger 6a45e5df 2018-02-06T16:04:09 Add skeleton of hb-subset-glyf, call if from hb_subset(...)
Garret Rieger 31ec3c2e 2018-02-06T15:37:34 Create a subset plan in hb_subset.
Garret Rieger 25e9173f 2018-02-05T17:26:25 Make hb-subset-plan private.
Garret Rieger af46a4da 2018-02-05T17:14:46 Move definition of hb_subset_input into hb-subset-private.hh.
Garret Rieger 7481f0ce 2018-02-05T16:05:12 Add codepoints to subset input.
Garret Rieger 1cfe650f 2018-02-05T15:22:30 Add a basic sketch of hb-subset-plan.
Behdad Esfahbod 126ffdbe 2018-02-07T12:26:41 [aat] Fix debug compile
Behdad Esfahbod 2971e9da 2018-02-06T11:48:04 [aat] Adjust unsafe-to-break logic some more I believe I'm happy with it now.
Behdad Esfahbod f49256d8 2018-02-06T11:39:36 [aat] Simplify unsafe-to-break logic
Behdad Esfahbod cc1e0840 2018-02-06T10:20:48 [buffer] Tweak diff re glyph_flags again We expect the buffer to have no flags that the reference doesn't... Meh. Makes MORX tests pass now. Need to better define the behavior.
Ebrahim Byagowi d49ae515 2018-02-06T13:48:10 Fix hb-buffer logic error
Behdad Esfahbod f41b9213 2018-02-05T19:51:09 Fix fallthrough compiler warning with gcc >= 7 Fixes https://github.com/harfbuzz/harfbuzz/issues/755
Behdad Esfahbod 0ff007da 2018-02-04T20:22:07 [subset] Minor
Behdad Esfahbod ae39fc81 2018-02-04T20:18:52 [subset] Build hb-subset into separate libharfbuzz-subset.so
Behdad Esfahbod 257022b1 2018-02-04T20:01:35 Merge pull request #745 from googlefonts/master Interface for hb_subset, skeleton for the hb-subset cli, and basic testing rigging.
Behdad Esfahbod 54e6efad 2018-02-04T14:58:02 [aat] Fix unsafe-to-break At any position, if state is not zero, mark unsafe-to-break before, unless we can reason it safe. At any position, if there's an action entry for end-of-text, mark unsafe to break. Also changes buffer diff impl to allow for flag differences as long as the buffer glyph flags are superset of reference glyph flags. With this, all MORX tests pass.
Garret Rieger f83a43b5 2018-02-02T17:50:45 Add CMake configuration for all of the new subsetting code.
Garret Rieger 34fa7b3a 2018-02-01T16:50:18 Whitespace
Garret Rieger 8c3a6727 2018-01-31T15:43:24 Get test-subset to pass.
Garret Rieger 74d39ed2 2018-01-31T15:20:52 Attach add a hb_face_t to hb_subset_face_t.
Garret Rieger a2965f2e 2018-01-31T14:53:09 Add a basic implementation of hb-subset to enable compilation of test-subset.
Garret Rieger cf403e1a 2018-01-30T18:40:23 Add hb-subset.h to hb.h
Garret Rieger c0257351 2018-01-30T18:39:41 Fix typo in hb-subset.h
Rod Sheeter 9ccb8366 2018-01-17T22:09:07 Start to sketch APIs for subsetting
Behdad Esfahbod 89b1906d 2018-02-04T14:45:02 [aat] More adjustment to ContextualSubtable See comment. With this, MORX-20 passes if I turn --verify off. Our unsafe-to-break logic is currently broken in presence of end-of-text actions. That's, ugh, extra work to fix. Let me try...
Behdad Esfahbod 8be596f0 2018-02-04T14:40:17 [aat] In ContextualSubstitute, apply end-of-text action to last glyph
Behdad Esfahbod c0b1c7eb 2018-02-04T14:19:41 [aat] Remove unneeded check
Behdad Esfahbod aed32589 2018-02-02T16:08:50 [aat] In ContextualSubtable, mark mark after substituting mark Fixes MORX-21.
Behdad Esfahbod fe5f9b1a 2018-02-02T15:53:25 [aat] Fix ContextualSubtable sanitization Fixes MORX-18, MORX-19, and MORX-22.
Bruce Mitchener e8859fca 2018-02-04T01:26:57 Enable use of atexit() on macOS and related platforms. The atexit() man page indicates that this is expected to behave in the expected way on unloading of shared libraries.
Bruce Mitchener a8957377 2018-02-04T01:31:53 Use nullptr, not NULL.
David Corbett ccb0367d 2018-02-02T12:04:04 Let VS1 follow U+1031 MYANMAR VOWEL SIGN E
punchcutter c6dbf6e7 2018-01-31T14:09:04 Allow optional ZWJ in virama terminated cluster
Bruce Mitchener dae20fb5 2018-01-31T20:16:08 Use nullptr instead of 0.
Bruce Mitchener 90218fa9 2018-01-31T20:44:45 Fix typos.
Bruce Mitchener 148ca610 2018-01-31T22:24:51 [ot-layout] Fix nullptr dereference. If the `calloc` for `gsub_accels` or `gpos_accels` fails, then the unlikely branch afterwards can be taken, which frees up the `hb_ot_layout_t`, but since those fields can now be `nullptr`, then we don't want to dereference them.
Bruce Mitchener 0c66043a 2018-01-31T20:24:27 [coretext] Fix memory leaks. In `reference_table`, if the data is empty and we return early, we still need to release the data object. In `hb_coretext_shape`, there two edge cases where an early return should release the attributed string.
Behdad Esfahbod e89df6e1 2018-01-30T10:58:44 [aat] Limit number of DontAdvance transitions Remove the faulty loop-detection logic. Use max-ops for breaking out of infinite loops or heavy work. https://twitter.com/behdadesfahbod/status/958065026262183936
Ebrahim Byagowi 55cae0d7 2018-01-29T18:05:24 [test] Use 'otool -L' where ldd doesn't exist (macOS) (#732)
David Corbett 2ec7dd1f 2018-01-28T17:48:28 Fix Travis build on macOS (#731)
Behdad Esfahbod 12757b69 2018-01-26T18:14:05 Misc warning fixes Fixes https://github.com/harfbuzz/harfbuzz/issues/712
bungeman 85be365e 2018-01-26T13:38:06 Use KernSubTableFormat2::rightClassTable Issue originally reported at http://cppfiles.com/chromium.txt . This fixes what appears to be a copy - paste issue which causes both KernSubTableFormat2::rightClassTable and the 'right' argument to KernSubTableFormat2::get_kerning to go unused.
Bruce Mitchener 19a93fcf 2018-01-21T20:40:34 Fix typos.
Behdad Esfahbod 51ce3828 2018-01-19T18:36:39 [aat] Fix Ligature matching I hope... Makes "ffi" work with Zapfino. I'm not sure if doing it correctly though...
Behdad Esfahbod bef50985 2018-01-19T18:24:00 [aat] Add TODO
Behdad Esfahbod e6f283ed 2018-01-19T18:08:56 [aat] Implement LigatureSubtable We form the Zapfino ligature now. Yay! No further testing done.
Behdad Esfahbod f07ce661 2018-01-19T16:52:01 [aat] Embed a sanitizer context in hb_aat_apply_context_t For run-time checking.
Behdad Esfahbod 046690a4 2018-01-17T16:59:55 [aat] Add hb_aat_apply_context_t
Behdad Esfahbod fd034490 2018-01-17T16:46:51 Rename hb_apply_context_t to hb_ot_apply_context_t
Behdad Esfahbod 94b49bee 2018-01-17T12:46:08 Whitespace
Cosimo Lupo c8f2a4f5 2018-01-18T22:49:40 hb-common.cc: Hatran script is right-to-left (#714) "Hatran is written from right to left horizontally" http://www.unicode.org/L2/L2012/12312-n4324-hatran.pdf This ancient script was added with Unicode 8.0. Also this spreadsheet (referenced in an inline comment in the source code) has it as RTL: http://goo.gl/x9ilM
Ebrahim Byagowi 00806149 2018-01-19T01:12:31 Improve avoiding C++ linkage, definition creation and cmake tests (#710)
Behdad Esfahbod 461a605f 2018-01-17T10:02:48 [aat] Allocate set dynamically
Behdad Esfahbod 949f6af2 2018-01-15T20:44:10 Disallow sanitize recursing into Extension subtables multiple times Fixes https://oss-fuzz.com/v2/testcase-detail/5216838347653120 which is a stack overflow, not by way of infinite recursion, just being deep. That's disallowed anyway, so catch it as it happens, not afterwards.
Behdad Esfahbod bcb6f1ae 2018-01-15T20:34:05 Whitespace
Behdad Esfahbod 12fffce1 2018-01-15T15:41:51 [aat] Sanitize classTable in StateTable
Behdad Esfahbod e6263c71 2018-01-15T15:37:55 [aat] Wire up table length to apply()
Behdad Esfahbod 679ae744 2018-01-14T15:03:31 [aat] Towards implementing LigatureSubtable
Behdad Esfahbod c9e12a2b 2018-01-13T17:05:12 Fix set initializer