Log

Author Commit Date CI Message
Behdad Esfahbod b5bbb791 2017-12-18T09:18:51 1.7.3
Behdad Esfahbod 1245395a 2017-12-17T12:32:33 [coretext] In hb_coretext_font_create() set ptem Otherwise setting the CTFont was ineffective as it would have been recreated anyway unless font size was set to 18 CSS points.
Behdad Esfahbod 493a005d 2017-12-16T11:49:39 [set] In add_sorted_array(), bail if data is not sorted
Behdad Esfahbod a7bd6d7a 2017-12-16T11:11:18 [collect_glyphs] Bail if input data looks like garbage Specificaly, when a range or sorted array has unexpected order, we take that as font data being garbage and bail out. This fixes significant slowdown on a bad version of Chandas font which has a 600KB GPOS with garbage inside. Later on, I like to add a maximum-work counter for collect_glyphs to protect against malicious fonts as well. Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=794896
Behdad Esfahbod 1ce7d6e2 2017-12-16T11:36:16 [set] Optimize add_array() / add_sorted_array() Does page lookup as needed.
Behdad Esfahbod 71e6adf1 2017-12-16T11:07:37 [collect_glyphs] handle ClassDef better
Behdad Esfahbod 87cc5a65 2017-12-16T06:18:07 [collect_glyphs] In PairPosFornat2 do not collect classDef1 The coverage already covered that.
Behdad Esfahbod 81f27df4 2017-12-16T06:12:06 More work towards improving collect_glyphs() against bad input The three "XXXXX"'s should be switched to false. Doing that separately for ease of bisecting...
Behdad Esfahbod 5d025720 2017-12-14T19:33:55 [set] Add add_sorted_array() Not optimized to use sortedness yet. Also start putting in place infra to faster reject bad data. A version of Chandas.ttf found on some Chrome bots has 660kb of GPOS, mostly junk. That is causing 48 million of set->add() calls in collect_glyphs(), which is insane. In the upcoming commits, I'll be speeding that up by optimizing add_sorted_array(), while also reducing work by rejecting out-of-sort arrays quickly and propagate the rejection. Part of https://bugs.chromium.org/p/chromium/issues/detail?id=794896
Behdad Esfahbod 9d6511a7 2017-12-14T19:04:55 [set] Reduce number of preallocated pages from 8 to 1 Now that pagesize is 8192, this feels better.
Behdad Esfahbod ae2e2b06 2017-12-14T18:15:14 Fix partial tracing debug builds
Behdad Esfahbod 9daa88cd 2017-12-14T13:37:48 Minor
Behdad Esfahbod f424a342 2017-12-14T13:30:38 [set] Change pagesize from 512 bits to 8192 bits Fixes perf regression on some heavy fonts in Chrome's FT+HB interaction. See: https://bugs.chromium.org/p/chromium/issues/detail?id=782220 More work to be done: https://bugs.chromium.org/p/chromium/issues/detail?id=794896
Behdad Esfahbod 0fe62c1f 2017-12-13T13:12:20 [set] Add add_array() To be used to optimize adding a whole bunch of (sorted) items at the same time, as in CoverageFormat1.
ebraminio 20e69c95 2017-12-07T12:24:12 [test] print commented line, like the original script (#649)
ebraminio 71ad2777 2017-12-07T11:35:36 [ci] Add an after distribution test runner (#648)
ebraminio 5f061d27 2017-12-07T11:22:55 Rewrite run-tests in python (#647)
Khaled Hosny 3ce6c7bd 2017-12-06T21:08:20 [ci] Sort out Travis configuration Use a matrix to avoid a gazillion if's.
ebraminio 5a6d2b98 2017-12-06T18:27:27 [ci] minor improvements (#644)
Khaled Hosny 840a32e3 2017-12-06T00:49:25 Run cmake tests on CI builds
Khaled Hosny c8609551 2017-12-06T00:43:28 Add API tests to cmake build
Khaled Hosny f19126dd 2017-12-05T22:52:54 We are already inside “if HAVE_GLIB” check
ebraminio 7af48a3f 2017-12-06T14:22:19 [ci] Don't cache msys2 folder
ebraminio b6f505c7 2017-12-06T13:51:04 [ci] Enable glib and freetype on appveyor cmake (#643)
Behdad Esfahbod 03b7a221 2017-12-05T13:12:11 [debug] Use %p to print pointers Fixes https://github.com/harfbuzz/harfbuzz/issues/640
Ebrahim Byagowi 353cc6fb 2017-12-06T00:04:30 [ci] Fix appveyor badge
Nathan Willis 0dc03ef7 2017-12-05T17:43:09 Indic: always hyphenate pre-base-reordering, for clarity.
Behdad Esfahbod be59f3cb 2017-12-05T09:01:28 Silence unused-variables warning on MSVC Fixes https://github.com/harfbuzz/harfbuzz/issues/635
David Corbett 80c1b01f 2017-12-05T08:28:42 Allow digits in language system tags
David Corbett 85bb89a8 2017-12-04T15:15:27 Fix string matching in parse_bool
Olivier Blin 0fd89dc6 2017-12-04T18:58:41 [hb-ft] Fix build when Multiple Master font support is disabled in freetype FT_Set_Var_Blend_Coordinates() is not available when "Multiple Master font interface" is disabled in freetype's modules.cfg
Behdad Esfahbod 843f7f70 2017-12-04T08:52:39 1.7.2
Behdad Esfahbod eeb26d21 2017-12-02T15:22:04 [set] Actually commit fixes mentioned in previous commit!
Behdad Esfahbod 20b46727 2017-12-02T15:14:26 [set] Fix recent changes Ouch! Add tests.
Behdad Esfahbod 0744149c 2017-12-02T15:06:15 [set] Protect against bad input in hb_set_add_range()
Behdad Esfahbod d5e29303 2017-11-28T23:11:34 [coretext] Add hb_coretext_font_create() Fixes https://github.com/harfbuzz/harfbuzz/issues/628 New API: hb_coretext_font_create()
Behdad Esfahbod 9d0194b3 2017-12-01T13:56:06 [set] Optimize add_range() some more It's as good as it gets, and seems to be on par with previous set implementation in my benchmark. Would be great if someone can double-check my bitops.
Behdad Esfahbod 438c325a 2017-12-01T13:34:14 [set] Optimize add_range() With new set implementation, this became really costy. Optimize it. There's more to be done, but this shaves off most of the fat. Part of fixing https://bugs.chromium.org/p/chromium/issues/detail?id=782220
Behdad Esfahbod be9e307a 2017-12-01T12:36:26 [ot] Ensure layout in hb_ot_layout_table_get_lookup_count()
Behdad Esfahbod d9066afd 2017-11-29T16:18:18 Add another test for previous commit From https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4273
Behdad Esfahbod 16fba5b2 2017-11-29T16:08:11 [ot] Fix Extension type recurse to disallow recursing to another Extension Particularly hazardous if the second layer mixes forward and backward lookups. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4336
Behdad Esfahbod 7ab49de9 2017-11-29T14:20:09 Try fixing Mac build with 10.12 Related https://github.com/harfbuzz/harfbuzz/issues/345 https://github.com/harfbuzz/harfbuzz/pull/629
Behdad Esfahbod d672bcf9 2017-11-28T22:20:57 Minor
Behdad Esfahbod 23ade707 2017-11-21T16:36:07 [doc] Optimize HarfBuzz.png; add HarfBuzz.svg SVG is unused. Just keeping it here.
Khaled Hosny 77efdeca 2017-11-22T00:14:29 Improve the docs commit message a bit
Ebrahim Byagowi a13c0748 2017-11-21T09:52:18 Move gh-pages docs to harfbuzz.github.io
David Corbett 9f259769 2017-11-21T14:16:10 Categorize U+A8B4 as Consonant_Medial
ebraminio cd8c62fd 2017-11-21T01:07:26 [ci] Add Oracle Developer Studio (former Sun Studio) based compiler (#621)
Behdad Esfahbod 8d553405 2017-11-20T19:43:22 Fix fallback positioning of double diacritic marks Fixes https://bugzilla.gnome.org/show_bug.cgi?id=787284
Behdad Esfahbod bb7cc4ea 2017-11-20T19:39:47 Minor
Behdad Esfahbod a0ad0d5b 2017-11-20T15:07:48 [docs] s/Harfbuzz/HarfBuzz/g
David Corbett 87d74605 2017-11-20T13:19:34 Categorize U+0C80 as Consonant_Placeholder
ebraminio 7c6937e7 2017-11-20T14:49:22 Move all references of old url to the new address (#622)
Behdad Esfahbod baf7779d 2017-11-14T21:53:48 Limit how much recursion GSUB/GPOS does This only counts recursions right now. Good start. Hopefully... Fixes https://github.com/behdad/harfbuzz/issues/429
Behdad Esfahbod 173dab63 2017-11-14T21:27:24 Minor move
Behdad Esfahbod c6173a39 2017-11-14T21:09:03 Add Offset16 and Offset32
Behdad Esfahbod 6f335ed1 2017-11-14T21:06:07 Replace USHORT/SHORT/ULONG/etc with UINT16/INT16/UINT32/etc
Behdad Esfahbod a130ee6d 2017-11-14T20:30:03 Remove a couple of unused consts
Behdad Esfahbod e20e47ea 2017-11-14T20:25:29 [glyf] Try fixing undefined-behavior Might fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1463
Behdad Esfahbod 7b40876a 2017-11-14T20:22:05 [ot] Remove unneeded TODO item Looks like hb-ot-font is complete after all! CFF font names and CFF glyph metrics don't work though...
Behdad Esfahbod eab4feb5 2017-11-14T20:16:45 [hmtx] Use curiously recurring template pattern https://en.wikipedia.org/wiki/Curiously_recurring_template_pattern
Behdad Esfahbod 977ddff1 2017-11-14T20:06:19 [ot] Move hb_ot_face_cmap_accelerator_t
Behdad Esfahbod a7f15959 2017-11-14T20:02:24 Shuffle
Behdad Esfahbod a85d7ead 2017-11-14T20:00:34 [ot] Move hb_ot_face_metrics_accelerator_t
Behdad Esfahbod f00a94e1 2017-11-14T19:54:48 Adjust privacy for recent changes
Behdad Esfahbod 7e2839c4 2017-11-14T19:52:09 [ot] Move hb_ot_face_glyf_accelerator_t
Behdad Esfahbod c4e18e54 2017-11-14T19:47:31 [ot] Move hb_ot_face_cbdt_accelerator_t
Behdad Esfahbod 9b04b038 2017-11-14T19:31:50 [ot] Fold hb_ot_face_post_accelerator_t
Behdad Esfahbod 702d86ba 2017-11-14T19:25:38 [ot] Fold hb_ot_face_kern_accelerator_t
Behdad Esfahbod 909de95a 2017-11-14T16:22:52 Minor build fix
Behdad Esfahbod b9c96b5d 2017-11-14T15:56:21 Add test for previous commit At some point we should run tests under valgrind...
Behdad Esfahbod e5930722 2017-11-14T15:47:55 Fix invalid buffer access in OOM times Hopefully fully fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1856
Behdad Esfahbod fcd6c338 2017-11-14T14:40:21 Fix more compiler warnings
Behdad Esfahbod 7fdf16b2 2017-11-14T14:40:11 Fix compiler warning
David Corbett 87f0ad18 2017-11-02T10:59:25 Allow U+20F0 in USE clusters
Behdad Esfahbod f93c6f8b 2017-11-14T11:09:19 1.7.1
Behdad Esfahbod 93f7c165 2017-11-14T10:59:54 Revert "[glib/ucdn/icu/ft/ot] Make returned funcs inert" This reverts commit 5daf3bd4494cce6b4fb074533be9e99c4d9e0edd. If other atexit callbacks try to destruct the objects we destruct in atexit callbacks, bad things will happen. I'll come up with some other way to catch premature destruction of HB-owned objects. Fixes https://github.com/behdad/harfbuzz/issues/618
Behdad Esfahbod c48475f3 2017-11-13T20:26:29 Whitespace
Behdad Esfahbod 83d68027 2017-11-13T20:25:02 Clean up GlyphID After 4a27c17ea0234dfe33e62f5830d9f92c26d48d30 we do not need the special GlyphID.cmp(hb_codepoint_t), so just make GlyphID a typedef. Fixes https://github.com/behdad/harfbuzz/issues/612
Behdad Esfahbod 7f39f576 2017-11-13T15:04:13 Implement strtod_l() on MSVC Patch from Jean Ghali on mailing list.
Behdad Esfahbod e5d70988 2017-11-13T09:42:37 1.7.0
Behdad Esfahbod e4da3802 2017-11-10T17:14:27 [coretext/uniscribe/directwrite/graphite/fallback] Update for unsafe-to-break Fixes https://github.com/behdad/harfbuzz/issues/615 We'll see which bots I broke.
Martin Hosken 4de03a15 2017-11-10T13:47:38 Fix graphite intergration reordered clusters problem
Behdad Esfahbod 8eed9cb1 2017-11-09T18:09:40 [kern] Fix invalid memory access if offset is zero If offset is zero, we return Null() object. Wasn't prepared for that. Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4088
Khaled Hosny b68fba4d 2017-11-03T14:27:33 [test] Use glyph ids instead of forcing ft funcs We were using ft funcs because these are CFF fonts, but we can avoid glyph names instead and keep testing both ot and ft.
Khaled Hosny 2fcfbcf8 2017-11-02T09:45:06 [test] Fix another instance of component rounding See https://github.com/behdad/harfbuzz/pull/590#issuecomment-341194673
Behdad Esfahbod c4f4c0a2 2017-11-08T17:04:31 Fix indexing in unsafe-to-break marking for 'stch' feature Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4099
Behdad Esfahbod 822035ce 2017-11-08T17:03:55 [tests/arabic-stch.tests] Don't show flags We don't need to test the actual flag values. For unsafe-to-break, the --verify in run-tests.sh checks what we are interested in.
Behdad Esfahbod 53f0c27d 2017-11-08T17:02:54 Minor
David Corbett 5a9cba97 2017-11-08T13:15:27 Mark non-initial left matras as unsafe to break
Behdad Esfahbod a6150306 2017-11-06T15:40:07 [kern] Implement format-2 kern subtable
Behdad Esfahbod 82a38d1f 2017-11-06T15:28:24 [kern] Allow subtables longer than 64kb Apparently calibri.ttf does this: https://github.com/fonttools/fonttools/pull/1094#discussion_r148933791
Behdad Esfahbod 625ae08f 2017-11-04T12:01:11 [kern] Towards implementing format-2
David Corbett 74e82ada 2017-11-06T14:41:55 Mark glyphs involved in 'stch' as unsafe to break
Behdad Esfahbod 601126ad 2017-11-03T20:34:11 [configure] Fix gobject default value in help output Fixes https://github.com/behdad/harfbuzz/issues/607
Behdad Esfahbod 5aad8194 2017-11-03T17:16:26 Simplify tracing code when tracing is disabled Fixes https://github.com/behdad/harfbuzz/pull/605
Behdad Esfahbod 40ec3bbb 2017-11-03T16:57:30 Consolidate debug stuff into hb-debug.hh Part of fixing https://github.com/behdad/harfbuzz/pull/605
Behdad Esfahbod 384862d7 2017-11-03T16:31:47 Remove NO_COPY()
Unknown 97145df2 2017-11-03T09:05:00 Trivial typos Found using `codespell -i 3 -w -I '../harf-whitelist.txt'` whereas the whitelist contents were: ``` beng iff pres ot te teh ```
ebraminio 4a591a0e 2017-11-02T09:33:12 [ci] Add ArchLinux (#604)