Behdad Esfahbod
6e74c64211
Improve normalization heuristic
...
Before, for most scripts, we were not trying to recompose two characters
if the second one had ccc=0. That fails for Myanmar where U+1026
decomposes to U+1025,U+102E, both of which have ccc=0. However, we do
want to try to recompose those. We now check whether the second is a
mark, using general category instead.
At the same time, remove optimization that was conflicting with this.
[Let the Ngapi hackfest begin!]
2013-02-11 12:59:00 -05:00
Behdad Esfahbod
adff377815
Revert "[Indic] Import ragel-generated Indic machine in git"
...
This reverts commit fab7a71f11
.
Conflicts:
src/hb-ot-shape-complex-indic-machine.hh
Keeping that generated file in-tree causes problems with processes like
tinderbox that automatically fetch and build harfbuzz. It's harder to
bootstrap harfbuzz now (as was previously), but I'm willing to give this
another chance and see how it goes.
2013-02-06 23:43:27 -05:00
Behdad Esfahbod
9de5f98f36
Bug 60035 - intermittent make install failure on hb-version.h
2013-02-04 23:28:22 -05:00
Behdad Esfahbod
6c1e8b614c
Bug 59637 - check-exported-symbols.sh & check-internal-symbols.sh fail on mips/mipsel
2013-02-04 23:24:16 -05:00
Behdad Esfahbod
bafdf3d983
Merge check-internal-symbols.sh and check-exported-symbols.sh
2013-02-04 23:06:50 -05:00
Behdad Esfahbod
e9171af55c
Bug 60053 - hb-common.cc:181:6: warning: ‘void free_langs()’ defined but not used
2013-01-29 22:45:00 -05:00
Behdad Esfahbod
eb45c0a2fb
Minor
2013-01-16 22:07:50 -06:00
Behdad Esfahbod
52c8d1226f
Minor
2013-01-14 13:51:46 -06:00
Behdad Esfahbod
f88d3bd7e4
Fix build with Sun compiler
2013-01-14 00:33:58 -06:00
Behdad Esfahbod
08b29c0809
Revert "Minor"
...
This reverts commit 0a49235701
.
Enables code on more compilers.
2013-01-14 00:32:12 -06:00
Behdad Esfahbod
e78463211e
Fix linking with non-gcc compilers
2013-01-14 00:27:21 -06:00
Behdad Esfahbod
de649f07f1
Fix residuals from fontconfig changes
2013-01-14 00:26:43 -06:00
Behdad Esfahbod
2dcb333f52
Add atomic ops for Solaris
...
Based on fontconfig patch from Raimund Steger.
2013-01-10 01:18:10 -06:00
Behdad Esfahbod
69fd6e157c
Fix crasher during multi-thread shaper data creation
...
Sample crash:
0 _hb_graphite2_shaper_face_data_destroy (data=0xffffffffffffffff)
at ../../src/hb-graphite2.cc:129
1 0x00007ffff4271d7d in hb_graphite2_shaper_face_data_ensure (
face=<optimized out>) at ../../src/hb-shaper-list.hh:35
2 hb_shape_plan_plan (shaper_list=<optimized out>, num_user_features=0,
user_features=0x0, shape_plan=0xf7b490) at ../../src/hb-shaper-list.hh:35
3 hb_shape_plan_create (face=<optimized out>, props=<optimized out>,
user_features=0x0, num_user_features=0, shaper_list=<optimized out>)
at ../../src/hb-shape-plan.cc:108
4 0x00007ffff4272c93 in hb_shape_plan_create_cached (face=0x10cf2b0,
props=0x11980d8, user_features=0x0, num_user_features=<optimized out>,
shaper_list=0x0) at ../../src/hb-shape-plan.cc:283
2013-01-10 00:03:36 -06:00
Behdad Esfahbod
ecd454b3cd
[Indic] In old-spec shaping, don't move viramas around if seq ends with one
...
For example: u0c9a u0ccd u0c9a u0ccd with Lohit. See:
https://bugs.freedesktop.org/show_bug.cgi?id=59118
2013-01-08 18:09:46 -06:00
Behdad Esfahbod
e95e031b56
[GPOS] If an Anchor offset is NULL, return false
...
If in a MarkPos table, a base has no anchor for a particular mark class,
return NULL such that the subsequent subtables get a chance at it.
Test case:
hb-shape ./EBGaramond12-Regular.otf ἂ --features="ss20","smcp"
2013-01-08 16:17:06 -06:00
Behdad Esfahbod
1172dc7362
Rename hb_buffer_clear() to hb_buffer_clear_contents()
...
The previous name was clashing with harfbuzz.old. There are systems
that need to link both...
Clash-free now again.
2013-01-07 16:46:37 -06:00
Behdad Esfahbod
7b912c1936
Remove a few unnecessary const's
...
Apparently helps with MSVC compilation.
2013-01-04 01:25:27 -06:00
Behdad Esfahbod
f0c82410db
[OTLayout] Always collect default language system in collect_lookups
...
Not sure if this is the most desired behavior. It's the most easily
defined though.
2013-01-03 00:07:16 -06:00
Behdad Esfahbod
15e9e4e1dd
[OTLayout] Fix feature iteration in collect_lookups
...
Previous logic was just wrong.
2013-01-03 00:04:40 -06:00
Behdad Esfahbod
733e8c0d7b
[OTLayout] Whitespace
2013-01-03 00:00:23 -06:00
Behdad Esfahbod
d37ae38047
[OTLayout] Handle required_feature_index in collect_lookups
2013-01-02 23:57:36 -06:00
Behdad Esfahbod
11fba79ee9
[OTLayout] Fix various introspection issues with ClassDef's
...
As reported by Jonathan Kew.
2013-01-02 23:36:37 -06:00
Behdad Esfahbod
7b1b720a8d
Protect sets in-error from further modication
...
Fixes test-set.c
2013-01-02 23:02:59 -06:00
Behdad Esfahbod
8165f2765b
[tests] Start adding tests for hb-set.h
...
Fails now. Fixing.
2013-01-02 22:50:36 -06:00
Behdad Esfahbod
11d2956553
Minor
2013-01-02 17:41:27 -06:00
Behdad Esfahbod
596740db04
[Indic] Insert dottedcircle after a lone Malayalam dot-reph
2012-12-21 19:41:04 -05:00
Behdad Esfahbod
6f69fa283e
Minor
2012-12-21 16:51:15 -05:00
Behdad Esfahbod
f4abcbfc62
Minor
2012-12-21 16:48:51 -05:00
Behdad Esfahbod
8b217f5ac5
[Indic] Reorder Malayalam dot-reph to after base
...
Test sequence is simple: U+0D4E,U+0D15. The doth-reph should be
reordered to after the Ka.
https://bugzilla.redhat.com/show_bug.cgi?id=799565
2012-12-21 15:49:26 -05:00
Behdad Esfahbod
742c4ee97e
Minor
2012-12-21 15:35:03 -05:00
Behdad Esfahbod
044d385276
Bug 58498 - Tests fail with gold linker on ARM
2012-12-19 13:00:16 -05:00
Behdad Esfahbod
b68b86daf1
Use C++ linker if ICU is disabled
...
Bug 54948 - Undefined symbols: "operator delete(void*)" "operator
new(unsigned long)" "___cxa_pure_virtual"
2012-12-18 20:39:40 -05:00
Behdad Esfahbod
1ffd23cb47
[OTLayout] Limit alternate-location FeatureParams to 'size' feature
2012-12-17 23:29:15 -05:00
Behdad Esfahbod
efe252e600
[OTLayout] Fix 'size' featureParams implementation
...
Looks at alternate location now.
2012-12-17 23:25:57 -05:00
Behdad Esfahbod
e77b442574
[OTLayout] Fix tracing
2012-12-17 18:42:59 -05:00
Behdad Esfahbod
9b54562d63
[OTLayout] Towards correct FeatureParams handling
2012-12-17 13:55:36 -05:00
Behdad Esfahbod
87e43b7f2b
[OTLayout] Wire tag and list start all the way to Feature
...
To fix FeatureParam issues. No actual fix yet, just plumbing.
2012-12-14 17:48:23 -05:00
Behdad Esfahbod
85bc44b90a
[OTLayout] More 'size' feature sanity checking
...
We still don't look for the old incorrect place of the featureParams.
I'll wait till someone actually complains about it...
2012-12-12 11:38:49 -05:00
Behdad Esfahbod
0bae50a36f
[OTLayout] Add FeatureParamsCharacterVariants struct
...
No API yet.
2012-12-11 16:29:24 -05:00
Behdad Esfahbod
bd61bc13ea
[OTLayout] Add UINT24 type
2012-12-11 16:01:07 -05:00
Behdad Esfahbod
9cf7f9d4f6
Make test-size-params write size in points
2012-12-11 14:31:13 -05:00
Behdad Esfahbod
372fe2b67b
[OTLayout] Make hb_ot_layout_get_size_params() do some checks
2012-12-11 14:30:57 -05:00
Behdad Esfahbod
875a5cbc9c
[OTLayout] Change hb_ot_layout_get_params() API
...
And add implementation for StylisticSet UINameID. No API yet.
2012-12-11 14:17:01 -05:00
Behdad Esfahbod
0e9f0f3e5f
Fix atomic ops on iOS
...
Patch from John Ralls.
2012-12-10 15:25:21 -05:00
Behdad Esfahbod
5f9569c139
Make older MSVC happy
2012-12-10 13:39:06 -05:00
Behdad Esfahbod
071d5b831e
Work around missing OSAtomicCompareAndSwapPtrBarrier() on OS X 10.4
...
Not sure how to handle iOS.
2012-12-10 00:57:00 -05:00
Behdad Esfahbod
e923e6487b
[coretext] Fixed typo
...
Oops. Thanks Khaled for catching this.
2012-12-09 19:39:40 -05:00
Behdad Esfahbod
9a8395824b
[coretext] Add hb_coretext_face_get_cg_font()
...
Not sure if it's useful, but it was missing.
2012-12-09 18:47:36 -05:00
Behdad Esfahbod
8611235688
[coretext] Remove hack around GlyphID
...
We not namespace our types, so the hack is not needed anymore.
2012-12-09 18:47:09 -05:00
Behdad Esfahbod
8e58459aeb
[graphite2] "Update to new API"
...
Part of patch from Martin Hosken. I believe he knows what he's doing
:).
2012-12-09 18:45:47 -05:00
Behdad Esfahbod
a5a4ab3846
[graphite2] Add hb_graphite2_face_get_gr_face and hb_graphite2_font_get_gr_font
...
Based on patch from Martin Hosken. I believe it returns NULL if the
font doesn't have graphite tables, but have not tested.
2012-12-09 18:44:41 -05:00
Behdad Esfahbod
737ba15644
[graphite2] Preload all tables
...
Part of patch from Martin Hosken.
2012-12-09 18:43:03 -05:00
Behdad Esfahbod
0ae6dbf1b4
Minor
2012-12-09 18:37:38 -05:00
Behdad Esfahbod
3fe5c159d3
Remove excess return
...
Oops!
2012-12-09 18:20:19 -05:00
Behdad Esfahbod
ba2d543004
Update OT language tags
...
Patch from Roozbeh Pournader.
2012-12-08 19:28:41 -05:00
Behdad Esfahbod
aba38173c6
Minor
2012-12-05 19:54:48 -05:00
Behdad Esfahbod
61865745e3
Fix test with gold linker
...
Bug 57633 - Symbol tests should ignore __bss_start, _edata, _end
2012-12-05 19:42:10 -05:00
Behdad Esfahbod
b71b0bd9ee
[Indic] Add link to Sinhala split matra section of the Sinhala spec
2012-12-05 19:20:31 -05:00
Behdad Esfahbod
0beb66e3a6
Fix warnings
2012-12-05 19:14:28 -05:00
Behdad Esfahbod
130bb3f614
Rename VOID and void_t to have HarfBuzz prefix
...
Fixes build on Windows. Ouch!
2012-12-05 16:49:47 -05:00
Behdad Esfahbod
4a350d0eb2
[OTLayout] Reuse context in collect_glyphs() recursion
2012-12-04 17:13:09 -05:00
Behdad Esfahbod
8303593ba1
Minor
...
Use pointers instead of references, in preparation for upcoming change.
2012-12-04 17:08:41 -05:00
Behdad Esfahbod
1bcfa06d11
[OTLayout] Don't recurse in collect_glyphs() for GPOS
2012-12-04 16:58:09 -05:00
Behdad Esfahbod
b5e04c7dc6
[ucdn] Match upstream changes
2012-12-04 15:57:02 -05:00
Behdad Esfahbod
7babfe5a79
Move object mutext into the user-data array
...
We are not using it for anything lse it seems.
2012-12-04 00:35:54 +02:00
Behdad Esfahbod
a190011477
Remove unused functions
2012-12-04 00:29:35 +02:00
Behdad Esfahbod
88b7564183
"Update" to Unicode 6.2.0 tables
...
Nothing changed...
2012-12-02 19:14:29 +02:00
Behdad Esfahbod
4ab99fb8c3
Minor
2012-11-30 15:02:04 +02:00
Behdad Esfahbod
6748b96d27
Minor
2012-11-30 12:02:21 +02:00
Behdad Esfahbod
0f3f529904
Add test-size-params
...
Eventually this will become part of a yet-to-be-written hb-ot cmdline
tool.
2012-11-30 09:06:59 +02:00
Behdad Esfahbod
8465a05a89
Fix hb_buffer_guess_segment_properties() for empty buffer
...
Was causing assertion failure in shape_plan().
2012-11-30 08:46:43 +02:00
Behdad Esfahbod
e75943de80
[OTLayout] Fix collect_glyphs() recursion in ContextFormat3
2012-11-30 08:38:24 +02:00
Behdad Esfahbod
3038ae6adb
[OTLayout] Minor
2012-11-30 08:24:13 +02:00
Behdad Esfahbod
0dff11f6bf
[OTLayout] Look for any 'size' feature, not only in DFLT script
...
The old code doesn't work with all fonts, as Khaled has reported.
2012-11-30 08:14:20 +02:00
Behdad Esfahbod
e9ad71dee8
[OTLayout] Rename hb_ot_layout_position_get_size() to hb_ot_layout_get_size_params()
2012-11-30 08:10:26 +02:00
Behdad Esfahbod
f18ff5a84d
[OTLayout] Return correct value from recursion
...
Commit 4c4e8f0e75
broke contextual lookups
by making the recurse() function always return false.
Reported by Khaled. Test case: لا in Amiri.
2012-11-30 08:07:06 +02:00
Behdad Esfahbod
f54cce3c6a
[OTLayout] Implement 'size' feature
2012-11-26 14:02:31 +02:00
Behdad Esfahbod
2dc1141d7d
[OTLayout] Remove operator() from ClassDef
2012-11-24 19:16:34 -05:00
Behdad Esfahbod
b67881b171
[OTLayout] Remove operator() from Coverage
2012-11-24 19:13:55 -05:00
Behdad Esfahbod
a88e716021
[OTLayout] Implement hb_ot_layout_collect_lookups()
...
Untested.
2012-11-24 02:31:02 -05:00
Behdad Esfahbod
1ea375da44
[OTLayout] Only collect output glyphs during recursion in collect_glyphs()
2012-11-24 02:05:52 -05:00
Behdad Esfahbod
f1b12781d2
[OTLayout] Implement ChainContext collect_glyphs()
...
All of collect_glyphs() complete and untested now.
2012-11-24 02:02:01 -05:00
Behdad Esfahbod
cdd756b9f4
[OTLayout] Implement GPOS collect_glyphs()
2012-11-24 01:38:41 -05:00
Behdad Esfahbod
4c4e8f0e75
[OTLayout] Reuse apply context for recursion
2012-11-24 01:13:20 -05:00
Behdad Esfahbod
53a69f49e5
[OTLayout] Remove unused members
2012-11-24 01:03:05 -05:00
Behdad Esfahbod
d0a5233785
[OTLayout] Implement Context::collect_glyphs()
2012-11-23 18:54:59 -05:00
Behdad Esfahbod
26514d51b6
[OTLayout] More collect_glyphs()
2012-11-23 18:13:48 -05:00
Behdad Esfahbod
c6fb843f2a
[OTLayout] Templatize process_recurse_func
2012-11-23 18:04:08 -05:00
Behdad Esfahbod
9b34677f36
[OTLayout] Clean up closure() a bit
2012-11-23 17:55:40 -05:00
Behdad Esfahbod
adf7758a27
Improve debug log format in presence of templates
2012-11-23 17:34:02 -05:00
Behdad Esfahbod
2c53bd3c3e
[OTLayout] Start porting sanitize() to process()
2012-11-23 17:29:05 -05:00
Behdad Esfahbod
f48ec0e834
[OTLayout] Add process() tracing
2012-11-23 17:23:41 -05:00
Behdad Esfahbod
ed2e135944
[OTLayout] More Extension templatizing
2012-11-23 17:10:40 -05:00
Behdad Esfahbod
7dddd4e72b
[OTLayout] More templatizing Extension
2012-11-23 17:04:55 -05:00
Behdad Esfahbod
653eeb2645
Make Extension a template
2012-11-23 16:57:36 -05:00
Behdad Esfahbod
08f1eede1b
Minor
2012-11-23 16:51:43 -05:00
Behdad Esfahbod
2c9d6485a1
More tracing fixup
2012-11-23 16:49:19 -05:00
Behdad Esfahbod
a1733db1c6
[OTLayout] Start adding process() tracing
2012-11-23 16:40:04 -05:00
Behdad Esfahbod
73c18ae1b9
Cleanup
2012-11-23 15:34:11 -05:00