Behdad Esfahbod
272226f294
Revert "Fix build on clang after previous commit"
...
This reverts commit 9c80cbc87f
.
2014-08-14 13:11:33 -04:00
Behdad Esfahbod
9c80cbc87f
Fix build on clang after previous commit
2014-08-14 13:09:52 -04:00
Behdad Esfahbod
a5a27073cf
Rewrite this==NULL checks to avoid undefined behavior
...
Fixes https://code.google.com/p/chromium/issues/detail?id=403594
2014-08-14 13:05:36 -04:00
Behdad Esfahbod
cc3b2d432b
Remove this==NULL check from face->reference_table()
...
Not supposed to happen, and apparently this is undefined in C++.
https://code.google.com/p/chromium/issues/detail?id=403594
2014-08-14 13:00:47 -04:00
Behdad Esfahbod
cd7ea4f791
Make hb_object_t members private
...
In preparation for fixing:
https://code.google.com/p/chromium/issues/detail?id=403594
2014-08-14 12:57:02 -04:00
Behdad Esfahbod
c4308f895a
Minor
2014-08-13 19:42:01 -04:00
Behdad Esfahbod
cd5a1149d9
0.9.35
2014-08-13 12:43:34 -04:00
Behdad Esfahbod
20076cc41e
[coretext] Add version guards for kCTLanguageAttributeName
2014-08-12 19:26:35 -04:00
Behdad Esfahbod
1b3011c27d
[coretext] Pass buffer language to CoreText
2014-08-12 19:17:49 -04:00
Behdad Esfahbod
3eb6a4dbf2
[coretext] Minor
2014-08-12 19:17:45 -04:00
Behdad Esfahbod
08acfe0d3a
[hb-coretext] Fix cluster order of notdef runs in RTL text
2014-08-12 19:17:45 -04:00
Behdad Esfahbod
30eed75de2
[shape-plan] Fix typo!
...
The only effect is, if shaper_list was not NULL and no shaper was found,
we now don't insert anything into cache and return earlier.
2014-08-12 17:15:09 -04:00
Behdad Esfahbod
dc9aba6fc5
[shape-plan] Better debug messages
2014-08-12 17:14:36 -04:00
Behdad Esfahbod
e956c65bf7
[shape-plan] Simplify macro
2014-08-12 17:06:50 -04:00
Behdad Esfahbod
29e25550ce
Fix gcc warning
2014-08-12 17:06:50 -04:00
Behdad Esfahbod
8d5eebc0c6
[shape-plan] Fix shape-plan caching with more than one requested shaper
...
Wasn't breaking out of loop, ouch!
http://www.mail-archive.com/debian-bugs-dist@lists.debian.org/msg1246370.html
2014-08-12 17:06:50 -04:00
Behdad Esfahbod
bc3d0dc601
[shape-plan] Add debug tracing
2014-08-12 17:06:50 -04:00
Behdad Esfahbod
81b8d9777b
[coretext] Fix buffer resizing
...
Was very broken. Now fixed and tested.
2014-08-12 15:50:15 -04:00
Behdad Esfahbod
c3e924fb9e
[coretext] Rewind scratch-allocated arrays when not needed anymore
2014-08-12 15:50:15 -04:00
Behdad Esfahbod
8fd4d70b14
[wince] Two more Windows CE fixes
...
Report has it that it builds (and works) now:
https://codereview.qt-project.org/#/c/92087/
2014-08-12 13:12:31 -04:00
Behdad Esfahbod
fd0001d7db
[coretext] Compare CGFont and PS name, if CTFont didn't match
...
See comments.
Fixes vertical text. CoreText backend is in very good shape now!
Also see:
5a0eed3b50
25f4fb9b56
Fixes http://github.com/behdad/harfbuzz/pull/36
2014-08-12 10:34:01 -04:00
Behdad Esfahbod
5a0eed3b50
[coretext] Implement vertical shaping
...
Currently doesn't work though, we detect font fallback. Apparently
matching on ct_font is not safe for this. Looks like commit
25f4fb9b56
wasn't enough after all.
2014-08-11 23:47:16 -04:00
Behdad Esfahbod
1b55077f03
[coretext] Remove unnecessary alt_size
...
Wasn't needed after a6b8dc8742
.
2014-08-11 20:45:12 -04:00
Behdad Esfahbod
10b1104d79
[coretext] Use CFRunStatus
...
Assert that all runs had expected direction, and take hint for
non-monotone clusters.
2014-08-11 20:02:45 -04:00
Behdad Esfahbod
fd1a6aa8d0
[coretext] Minor
2014-08-11 20:01:37 -04:00
Behdad Esfahbod
130856c705
[coretext] Remove debug printf!
2014-08-11 19:16:26 -04:00
Behdad Esfahbod
b5fbc3b8f5
API: Do not clear buffer-flags in hb_buffer_clear_contents()
...
After 763e5466c0
, one doesn't
need to set flags for different pieces of text. The flags now
are something the client sets up once, depending on how it
actually uses the buffer. As such, don't clear it in
clear_contents().
Tests updated.
2014-08-11 18:40:01 -04:00
Behdad Esfahbod
104484cefe
Minor
2014-08-11 18:24:36 -04:00
Behdad Esfahbod
4acce77db7
[coretext] Pass buffer direction to CoreText
...
Have to use a CTTypesetter for this.
2014-08-11 17:46:50 -04:00
Behdad Esfahbod
5ec45dd37c
[coretext] Minor
...
It's hard to handle all possible NULL returns from CoreText. Add one
more...
2014-08-11 17:46:12 -04:00
Behdad Esfahbod
624a299b82
[coretext] Attach marks to base clusters
...
Fixes https://githu.com/behdad/harfbuzz/issues/49
to the extent that it can be fixed.
2014-08-11 15:29:18 -04:00
Behdad Esfahbod
3c41ccb535
[coretext] Use input clusters
...
Before, this shaper was returning UTF-16 cluster indices instead of
returning whatever cluster values the user had had set up in the buffer.
Ouch!
2014-08-11 15:11:59 -04:00
Behdad Esfahbod
a6b8dc8742
[coretext] Fix buffer resize handling
...
We can't really resize buffer and continue in this shaper as we are
using the scratch buffer for string_ref and log_cluster. Restructure
shaper to retry from (almost) scratch.
2014-08-11 15:08:53 -04:00
Behdad Esfahbod
9b3c60c88b
[coretext] Always compute log_clusters
...
To be used soon.
2014-08-11 13:46:56 -04:00
Behdad Esfahbod
15c633dd1f
Minor
2014-08-11 13:42:59 -04:00
Behdad Esfahbod
9ce067c775
[coretext] Simplify cluster mapping
2014-08-11 02:44:50 -04:00
Behdad Esfahbod
49f7fb6376
[coretext] Minor
2014-08-10 19:19:38 -04:00
Behdad Esfahbod
25f4fb9b56
[coretext] Fix fallback detection
...
Fixes http://github.com/behdad/harfbuzz/pull/36
2014-08-10 19:05:52 -04:00
Behdad Esfahbod
77a7a53ace
[coretext] Fix last range
...
Test with:
hb-view /Library/Fonts/Zapfino.ttf ZapfinoZapfino --features=-dlig[7:] --shaper=coretext
2014-08-10 19:05:52 -04:00
Behdad Esfahbod
c2b151d952
Fix hb_in_range() for types smaller than int
...
As exercised by hb-coretext .notdef code.
2014-08-10 19:05:52 -04:00
Behdad Esfahbod
26a963b9cb
[wince] Try to fix some stuff on Windows CE
...
Based on errors seen here:
http://testresults.qt-project.org/ci/QtBase_dev_Integration/build_03837/wince70embedded-armv4i-msvc2008_Windows_7/log.txt.gz
Fully untested.
2014-08-10 18:05:24 -04:00
Behdad Esfahbod
92aeee3f04
Minor
2014-08-10 17:42:19 -04:00
Behdad Esfahbod
b9993d8d6d
[coretext] Fix assert on Yosemite
...
Apparently those functions documented as sometimes returning NULL
actually exercise that right in OS X 10.10 Yosemite. The scratch
was too small for that. I *think* I fixed it, but haven't tested
as I don't have Yosemite.
2014-08-10 17:40:24 -04:00
Behdad Esfahbod
087733dd66
[coretext] Use CGFont as face_data
2014-08-10 17:33:16 -04:00
Behdad Esfahbod
d277c3d7ee
[arabic] Bug 82306 - Mandaic had errors in its Unicode Joining_Type
...
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=82306
2014-08-07 15:38:52 -04:00
Behdad Esfahbod
38fb30d742
Use atexit() only if it's safe to call from shared library
...
Apparently they are not (advertised as?) safe on BSD systems.
We ignore the case of static libraries.
Whitelisted on glibc, Android, and MSVC / mingw.
https://bugs.freedesktop.org/show_bug.cgi?id=82246
2014-08-06 13:34:49 -04:00
Behdad Esfahbod
d5e61470fa
[arabic] Fix fallback shaping regression
...
Was broken in 615d00ea25
.
Fixes https://github.com/behdad/harfbuzz/pull/48
Micro-test added.
2014-08-05 14:19:36 -04:00
Behdad Esfahbod
91c2c0fd2b
0.9.34
2014-08-02 19:24:55 -04:00
Behdad Esfahbod
d7c850f803
[uniscribe] Minor
2014-08-02 19:07:53 -04:00
Behdad Esfahbod
8f3eebf7ee
Make sure gsubgpos buffer vars are available during fallback_position
...
Add buffer var allocation asserts to a few key places.
2014-08-02 19:07:49 -04:00