Commit Graph

1512 Commits

Author SHA1 Message Date
Behdad Esfahbod e02d925786 Flip logic around 2012-04-07 14:49:13 -04:00
Behdad Esfahbod 11138ccff7 Add normalize mode
In preparation for Hangul shaper.
2012-04-05 17:25:19 -04:00
Behdad Esfahbod 6769f21d57 More moving code around 2012-04-05 16:46:46 -04:00
Behdad Esfahbod 2db2a56682 Move code around 2012-04-05 16:40:37 -04:00
Behdad Esfahbod cad3821f3d More sorting by Unicode version
This is the most convenient way to browse scripts.
2012-03-07 17:13:25 -05:00
Behdad Esfahbod 317b9504d7 Minor 2012-03-07 16:51:29 -05:00
Behdad Esfahbod fa2673c1ee More Unicode script age annotation, and a couple more RTL scripts
Cross-checked with Mark Davis's spreadsheet at http://goo.gl/x9ilM
2012-03-07 15:52:02 -05:00
Behdad Esfahbod 6d4016f1ba Make src tests pass again 2012-03-07 15:33:14 -05:00
Behdad Esfahbod 7da435f08c Separate Unicode 3.1 and Unicode 3.2 additions 2012-03-07 15:20:20 -05:00
Behdad Esfahbod f91136cb52 Route three Unicode 6.1 scripts through Indic shaper 2012-03-07 12:56:22 -05:00
Behdad Esfahbod f32c0012ad Add Unicode 6.1.0 scripts 2012-03-07 12:53:34 -05:00
Behdad Esfahbod 50e810cd0e Lydian and Kharoshthi are right-to-left 2012-03-07 12:49:08 -05:00
Behdad Esfahbod a52835635e Whitespace 2012-03-07 12:38:39 -05:00
Behdad Esfahbod 183224684a Use generic shaper for Buhid
As requested by Jonathan Kew.

We need to devise a better mechanism to choose which scripts to
pass through the Indic shaper.  Moreover, currently we are storing
data for some scripts in the Indic shaper that are not even going
through that shaper.  Need to find a better way...
2012-03-07 12:21:28 -05:00
Behdad Esfahbod cdc8b491a8 Update Indic table to Unicode 6.1 data 2012-03-07 12:08:33 -05:00
Behdad Esfahbod e3b2e077f5 Typo 2012-03-07 10:21:24 -05:00
Behdad Esfahbod c346671b6b Minor doc fixes 2012-03-06 20:47:50 -05:00
Behdad Esfahbod 461b9b6347 Fix cluster formation in Indic
Makes number of failures against Uniscribe with hi_IN dictionary from
OO.o to go down from 6334 to 4290.  Not bad for a one-line change!

Mozilla Bug 729626 - ASAN: heap-buffer-overflow HTML
2012-03-01 18:11:19 -08:00
Behdad Esfahbod bc71ad4973 Fix atomic-int op on Apple
The OSAtomicAdd32Barrier operator returns the new value, we want the
old value.
2012-03-01 17:30:29 -08:00
Behdad Esfahbod a1970d9afc Add support for atomic int and mutex on Apple systems
So, apparently there's no atomic int 'get' method on Apple.  You have to
add(0) to get.  And that's not const-friendly.  So switch inert-object
checking to a non-atomic get.  This, however, is safe, and a negligible
performance boost too.
2012-02-24 16:19:52 -05:00
Behdad Esfahbod 8004429102 Remove unused hb_atomic_int_set()
Apparently it can't be implemented on OS X.  We weren't using it anyway.
2012-02-24 16:19:52 -05:00
Behdad Esfahbod 45227c10e4 Add hb-warning.cc. Oops! 2012-02-23 19:47:43 -05:00
Behdad Esfahbod bd7ff1dec5 Allow disabling multi-threaded support
By defining HB_NO_MT.

Also, only warn once per missing MT feature support.

Mozilla Bug 666661 - gfx/harfbuzz/src/hb-prive.h - compiler warnings on mac
2012-02-23 15:06:16 -05:00
Behdad Esfahbod 634c9e3423 Minor 2012-02-22 16:43:21 -05:00
Behdad Esfahbod 514b6f8866 Followup: Reorder Hebrew combining classes for better rendering
Patch from Jonathan Kew.

Bug 662055 - advanced Hebrew diacritics are shown correctly only in
particular order.
2012-02-22 16:34:37 -05:00
Behdad Esfahbod 6e78607ea7 Reorder Hebrew combining classes for better rendering
Patch from Jonathan Kew.

Bug 662055 - advanced Hebrew diacritics are shown correctly only in particular order
2012-02-22 16:31:15 -05:00
Behdad Esfahbod 134aa7bc7e Make checks more OS X friendly 2012-01-27 02:23:22 -05:00
Behdad Esfahbod 6152199368 Fix check-header-guards on OS X 2012-01-27 02:23:22 -05:00
Behdad Esfahbod 71632c96da Fallback to Latin script if the font has no other usable scripts
Patch and description from Jonathan Kew:

It turns out that some legacy Thai fonts provide OpenType substitution
features to implement mark positioning, but (incorrectly) put those
features/lookups under the 'latn' script tag instead of using 'thai' (or
possibly 'DFLT'). See
https://bugzilla.mozilla.org/show_bug.cgi?id=719366 for an example and
more detailed description.

Although this is really a font bug, I suggest that we could improve the
rendering of such fonts by looking for the 'latn' as a fallback if
neither the requested script nor "default" is found in
hb_ot_layout_table_choose_script. Suggested patch against harfbuzz
master is attached.

This does _not_ affect the other kind of legacy Thai font, where custom
code to support vendor-specific PUA codepoints would be needed. I'm not
keen to go down that path; IMO, such fonts should be ruthlessly stamped
out in favour of standards-based solutions. :)

JK
2012-01-22 15:31:44 -05:00
Behdad Esfahbod 7a4a848db2 Minor 2012-01-19 15:15:21 -05:00
Behdad Esfahbod 3b5c22c39b Remove src/test.cc
Not really useful.
2012-01-19 14:28:11 -05:00
Behdad Esfahbod 889caa52fa [icu] Use U_FAILURE 2012-01-18 22:32:52 -05:00
Behdad Esfahbod 36a4f4a482 Replace u_strlen() with u_countChar32()
The latter is what I meant.
2012-01-18 22:16:49 -05:00
Behdad Esfahbod c521e793bd Fix OOB in replace_glyph()
Patch from Kenichi Ishibashi.
2012-01-18 21:51:05 -05:00
Behdad Esfahbod 03408ce73d Fix more possible buffer overruns
I have this function, but can't clean up it to my satisfaction.
2012-01-18 21:28:34 -05:00
Behdad Esfahbod 7d479900cd Refactor the two remaining uses of _hb_ot_layout_skip_mark() 2012-01-18 21:19:32 -05:00
Behdad Esfahbod 506ffeb8e7 Further mark skippy fixes from Jonathan Kew
We should be in good shape now.
2012-01-18 16:07:53 -05:00
Behdad Esfahbod a4a48fe6d4 Fix mark skipping regression
Ouch!
2012-01-17 18:08:41 -05:00
Behdad Esfahbod 4ab9731154 Refactor mark skipping 2012-01-16 22:20:31 -05:00
Behdad Esfahbod 370f03e9c6 Minor 2012-01-16 17:06:59 -05:00
Behdad Esfahbod 4d3aeb8cb2 [GSUB/GPOS] Fix mark skip indexing issues
Mozilla bug 701637 and 714067 combined.

Patch from Jonathan Kew.
2012-01-16 16:43:26 -05:00
Behdad Esfahbod e8eedf2687 Avoid enum trailing commas
Based on patch from Jonathan Kew.
2012-01-16 16:39:40 -05:00
Behdad Esfahbod 299ae0c3a3 [icu] Remove glib-ism 2012-01-14 21:29:45 -05:00
Behdad Esfahbod af92135424 Minor 2011-10-21 09:18:43 -07:00
Behdad Esfahbod 89d89646e8 Fix intrin.h b0rkage with older MSVC
Reported by Jonathan Kew.
2011-10-17 11:50:54 -07:00
Behdad Esfahbod af913c5788 Fix infinite loop in normalization code with variation selectors
Reported by Jonathan Kew.
2011-10-17 11:39:28 -07:00
Behdad Esfahbod 55deff7595 Add comments 2011-09-28 16:20:09 -04:00
Behdad Esfahbod 52ebdff49d Fix GSUB lookuptype 1 subtype 1 delta wrapping 2011-09-27 12:38:16 -04:00
Behdad Esfahbod b95324cdd2 Minor 2011-09-21 16:50:39 -04:00
Behdad Esfahbod 0cd33592ab Fix possible leaks 2011-09-21 16:49:33 -04:00