Commit Graph

5250 Commits

Author SHA1 Message Date
Behdad Esfahbod 438c325a25 [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
2017-12-01 13:34:14 -08:00
Behdad Esfahbod be9e307a88 [ot] Ensure layout in hb_ot_layout_table_get_lookup_count() 2017-12-01 12:37:05 -08:00
Behdad Esfahbod d9066afd6b Add another test for previous commit
From https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4273
2017-11-29 16:18:18 -08:00
Behdad Esfahbod 16fba5b215 [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
2017-11-29 16:08:11 -08:00
Behdad Esfahbod 7ab49de987 Try fixing Mac build with 10.12
Related
https://github.com/harfbuzz/harfbuzz/issues/345
https://github.com/harfbuzz/harfbuzz/pull/629
2017-11-29 14:20:09 -08:00
Behdad Esfahbod d672bcf9d7 Minor 2017-11-28 22:20:57 -08:00
Behdad Esfahbod 23ade70783 [doc] Optimize HarfBuzz.png; add HarfBuzz.svg
SVG is unused. Just keeping it here.
2017-11-21 16:37:04 -08:00
Khaled Hosny 77efdecadd Improve the docs commit message a bit 2017-11-22 00:14:29 +02:00
Ebrahim Byagowi a13c0748c5 Move gh-pages docs to harfbuzz.github.io 2017-11-21 13:53:35 -08:00
David Corbett 9f259769a6 Categorize U+A8B4 as Consonant_Medial 2017-11-21 13:48:32 -08:00
ebraminio cd8c62fd41
[ci] Add Oracle Developer Studio (former Sun Studio) based compiler (#621) 2017-11-21 01:07:26 -05:00
Behdad Esfahbod 8d55340593 Fix fallback positioning of double diacritic marks
Fixes https://bugzilla.gnome.org/show_bug.cgi?id=787284
2017-11-20 19:43:22 -08:00
Behdad Esfahbod bb7cc4eada Minor 2017-11-20 19:39:47 -08:00
Behdad Esfahbod a0ad0d5bb8 [docs] s/Harfbuzz/HarfBuzz/g 2017-11-20 15:07:48 -08:00
David Corbett 87d74605f5 Categorize U+0C80 as Consonant_Placeholder 2017-11-20 13:10:28 -08:00
ebraminio 7c6937e7c7
Move all references of old url to the new address (#622) 2017-11-20 14:49:22 -05:00
Behdad Esfahbod baf7779d2d Limit how much recursion GSUB/GPOS does
This only counts recursions right now.  Good start.

Hopefully...
Fixes https://github.com/behdad/harfbuzz/issues/429
2017-11-14 21:55:37 -08:00
Behdad Esfahbod 173dab6300 Minor move 2017-11-14 21:27:24 -08:00
Behdad Esfahbod c6173a392c Add Offset16 and Offset32 2017-11-14 21:09:03 -08:00
Behdad Esfahbod 6f335ed1e5 Replace USHORT/SHORT/ULONG/etc with UINT16/INT16/UINT32/etc 2017-11-14 21:06:07 -08:00
Behdad Esfahbod a130ee6df5 Remove a couple of unused consts 2017-11-14 20:30:03 -08:00
Behdad Esfahbod e20e47eaa1 [glyf] Try fixing undefined-behavior
Might fix https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1463
2017-11-14 20:25:29 -08:00
Behdad Esfahbod 7b40876a58 [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...
2017-11-14 20:22:05 -08:00
Behdad Esfahbod eab4feb5e2 [hmtx] Use curiously recurring template pattern
https://en.wikipedia.org/wiki/Curiously_recurring_template_pattern
2017-11-14 20:17:15 -08:00
Behdad Esfahbod 977ddff1f1 [ot] Move hb_ot_face_cmap_accelerator_t 2017-11-14 20:06:19 -08:00
Behdad Esfahbod a7f15959b5 Shuffle 2017-11-14 20:02:24 -08:00
Behdad Esfahbod a85d7ead04 [ot] Move hb_ot_face_metrics_accelerator_t 2017-11-14 20:00:34 -08:00
Behdad Esfahbod f00a94e1ec Adjust privacy for recent changes 2017-11-14 19:54:48 -08:00
Behdad Esfahbod 7e2839c438 [ot] Move hb_ot_face_glyf_accelerator_t 2017-11-14 19:52:29 -08:00
Behdad Esfahbod c4e18e54dc [ot] Move hb_ot_face_cbdt_accelerator_t 2017-11-14 19:52:26 -08:00
Behdad Esfahbod 9b04b0384f [ot] Fold hb_ot_face_post_accelerator_t 2017-11-14 19:31:50 -08:00
Behdad Esfahbod 702d86ba6b [ot] Fold hb_ot_face_kern_accelerator_t 2017-11-14 19:25:51 -08:00
Behdad Esfahbod 909de95a11 Minor build fix 2017-11-14 16:22:52 -08:00
Behdad Esfahbod b9c96b5d7c Add test for previous commit
At some point we should run tests under valgrind...
2017-11-14 15:56:21 -08:00
Behdad Esfahbod e5930722d4 Fix invalid buffer access in OOM times
Hopefully fully fixes
https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=1856
2017-11-14 15:47:55 -08:00
Behdad Esfahbod fcd6c338ff Fix more compiler warnings 2017-11-14 15:04:19 -08:00
Behdad Esfahbod 7fdf16b2ce Fix compiler warning 2017-11-14 15:04:19 -08:00
David Corbett 87f0ad183c Allow U+20F0 in USE clusters 2017-11-14 15:04:10 -08:00
Behdad Esfahbod f93c6f8bfa 1.7.1 2017-11-14 11:13:11 -08:00
Behdad Esfahbod 93f7c1652a Revert "[glib/ucdn/icu/ft/ot] Make returned funcs inert"
This reverts commit 5daf3bd449.

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
2017-11-14 10:59:54 -08:00
Behdad Esfahbod c48475f33a Whitespace 2017-11-13 20:26:29 -08:00
Behdad Esfahbod 83d6802736 Clean up GlyphID
After 4a27c17ea0 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
2017-11-13 20:25:02 -08:00
Behdad Esfahbod 7f39f57614 Implement strtod_l() on MSVC
Patch from Jean Ghali on mailing list.
2017-11-13 15:04:13 -08:00
Behdad Esfahbod e5d7098892 1.7.0 2017-11-13 09:42:37 -08:00
Behdad Esfahbod e4da380200 [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.
2017-11-10 17:14:27 -08:00
Martin Hosken 4de03a1585 Fix graphite intergration reordered clusters problem 2017-11-10 16:24:06 -08:00
Behdad Esfahbod 8eed9cb11e [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
2017-11-09 18:09:40 -08:00
Khaled Hosny b68fba4dc8 [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.
2017-11-09 18:01:15 -05:00
Khaled Hosny 2fcfbcf805 [test] Fix another instance of component rounding
See https://github.com/behdad/harfbuzz/pull/590#issuecomment-341194673
2017-11-09 18:01:15 -05:00
Behdad Esfahbod c4f4c0a2fa Fix indexing in unsafe-to-break marking for 'stch' feature
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=4099
2017-11-08 17:04:31 -08:00