Behdad Esfahbod
cf203af8a3
Implement space fallback in vertical direction
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1343
2018-10-31 18:27:09 -07:00
Behdad Esfahbod
e01250230b
[hmtx/vmtx] Fix a crasher
2018-10-31 18:14:00 -07:00
Behdad Esfahbod
36e90ef56e
[mort] Massage some more
2018-10-31 15:09:09 -07:00
Behdad Esfahbod
cbaff4ef19
[mort] Some more
2018-10-31 15:06:12 -07:00
Behdad Esfahbod
3087046d31
[mort] Refactor offset-to-index mapping
2018-10-31 14:59:14 -07:00
Behdad Esfahbod
b9db610add
Minor
2018-10-31 14:22:31 -07:00
Behdad Esfahbod
995bf6c6f8
[sbix] Rely on blob->as<> checking size against Type::min_size
2018-10-31 13:21:33 -07:00
Behdad Esfahbod
4d4e526b5c
Improve blob->as<>
...
It's true that blob->as<> should only be called on null or sanitized
data. But this change is safe, so keep it.
2018-10-31 13:19:42 -07:00
Behdad Esfahbod
5854d3fa25
[set] Warning fix with gcc 8.1
...
https://github.com/harfbuzz/harfbuzz/pull/1334
2018-10-31 10:42:49 -07:00
Ebrahim Byagowi
850a7af3a4
[ot-color-test] Remove the non-working exact strike size storing ( #1339 )
2018-10-31 14:20:23 +03:30
Ebrahim Byagowi
2e639c47c9
[aat] Fix older compilers by not referencing enum directly ( #1340 )
2018-10-31 14:20:14 +03:30
Ebrahim Byagowi
642c9dcf1b
[aat] Minor, remove extra semicolons
2018-10-31 14:02:37 +03:30
Behdad Esfahbod
c962d5e714
[mort] Make ligatures work
...
./hb-shape Apple_Chancery_10_12.ttf "Th th ll te to tr fr fu fj"
[T_h=0+2308|space=2+569|t_h=3+1687|space=5+569|l_l=6+1108|space=8+569|t_e=9+1408|space=11+569|t_o=12+1531|space=14+569|t_r=15+1385|space=17+569|f_r=18+1432|space=20+569|f_u=21+1733|space=23+569|f_j=24+1098]
Part of https://github.com/harfbuzz/harfbuzz/issues/1331
2018-10-31 01:18:21 -07:00
Behdad Esfahbod
c077989600
[mort] More Ligature work
2018-10-31 00:36:03 -07:00
Behdad Esfahbod
431c6e496b
[mort] Some Ligature work
2018-10-31 00:15:00 -07:00
Behdad Esfahbod
28b68cffe4
[mort] Implement / adjust Contextual substitution
2018-10-30 23:54:29 -07:00
Behdad Esfahbod
11dbf0f129
[mort] More fixes]
2018-10-30 21:49:59 -07:00
Behdad Esfahbod
e1552af95b
[maxp] Minor
2018-10-30 21:09:05 -07:00
Behdad Esfahbod
0cf282a32e
[mort] Grind some more
2018-10-30 20:52:12 -07:00
Behdad Esfahbod
90667b31bc
[mort] Hook up more
2018-10-30 20:15:28 -07:00
Behdad Esfahbod
9346b1f158
[morx] Remove stale comment
2018-10-30 20:04:13 -07:00
Behdad Esfahbod
f864ef215e
[mort] More massaging towards mort
2018-10-30 19:42:21 -07:00
Behdad Esfahbod
2d9467340b
[mort] Fix version check in sanitize
2018-10-30 19:33:42 -07:00
Behdad Esfahbod
c2527a1bc2
[mort] Make it compile / hook it up
...
Untested.
2018-10-30 19:26:39 -07:00
Behdad Esfahbod
933babdc07
[mort] Fixup on previous commit
2018-10-30 19:22:43 -07:00
Ebrahim Byagowi
b053cabacd
[mort] Bring back mort generalizations
...
Started by reverting https://github.com/harfbuzz/harfbuzz/commit/1f1c85a5
Just a starting point, if we agree even mort can come back.
2018-10-30 19:18:06 -07:00
Behdad Esfahbod
5cd544a621
Fix build
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1338
2018-10-30 19:16:00 -07:00
Behdad Esfahbod
1019391046
2.1.0
2018-10-30 15:52:26 -07:00
Behdad Esfahbod
bfd549daaa
Fix everything-bot
2018-10-30 14:47:27 -07:00
Garret Rieger
0e1ad5a075
[subset] Limit the number of scripts and langsys' that should be checked when collecting features.
2018-10-30 14:15:58 -07:00
Behdad Esfahbod
a7aba99baa
[name] Rename hb_name_id_t to hb_ot_name_id_t
...
https://github.com/harfbuzz/harfbuzz/pull/1254
2018-10-30 14:04:09 -07:00
Simon Tooke
881e1054bc
fix various GCC function pointer warnings
2018-10-30 13:17:54 -07:00
Behdad Esfahbod
dc9bd29fea
[CBDT] Implement Format18 get_extens
...
Part of https://github.com/harfbuzz/harfbuzz/issues/1327
2018-10-30 13:16:07 -07:00
Behdad Esfahbod
a2a7422aaf
[CBDT] Bound checks in reference_png
2018-10-30 13:14:56 -07:00
Khaled Hosny
0af3d176a6
[sbix] Fix memory leak in early return
...
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11210
2018-10-30 17:05:28 +02:00
Behdad Esfahbod
138f9e0f25
Minor
2018-10-30 01:31:13 -07:00
Ebrahim Byagowi
f7a08cd41d
Fix extra semicolon issues and test that on CI ( #1330 )
2018-10-30 11:29:09 +03:30
Behdad Esfahbod
7e998d193a
Fix spurious warning re uninitialized use
2018-10-30 00:52:22 -07:00
Behdad Esfahbod
b186274362
[set/map] Fix uninitialized memory
...
I keep forgetting that primitive types are NOT initialized during construction. :|
2018-10-29 23:21:14 -07:00
Behdad Esfahbod
4ef671f25f
[unicode] Fix a long-standing double-declaration warning
2018-10-29 22:46:19 -07:00
Behdad Esfahbod
166ae8b0aa
Remove now unused hb_auto_t<>
2018-10-29 22:40:37 -07:00
Behdad Esfahbod
56e0fd345c
Remove last use of hb_auto_t<>
2018-10-29 22:35:44 -07:00
Behdad Esfahbod
ca5e5a4979
Port Coverage::Iter off hb_auto_t<>
2018-10-29 22:30:21 -07:00
Behdad Esfahbod
3a4e5dd425
Remove a few unnecessary hb_auto_t<>'s
...
See a85641446c30247c4e948263f0f8c1147ed4efb9
2018-10-29 22:27:20 -07:00
Behdad Esfahbod
67a22f377d
[set/map/vector] Make constructable, but not copy or assignable
...
Disable copy/assign on them, as they shouldn't.
Make constructor / destructor call init_shallow/fini_shallow,
and make those idempotent. So, these three can be constructed
on stack now and no init/fini call is needed. As such,
hb_auto_t<> is not needed anymore. I'll remove that separately.
2018-10-29 22:23:22 -07:00
Behdad Esfahbod
ea0e51d1b1
Add HB_NO_CREATE_COPY_ASSIGN
2018-10-29 16:00:23 -07:00
Behdad Esfahbod
5b563640b2
Remove HB_DISALLOW_COPY_AND_ASSIGN from hb_ot_shape_planner_t
...
It was arbitrary that this struct had it and not dozens of others.
2018-10-29 15:58:44 -07:00
Behdad Esfahbod
14b353c185
One more iteration
2018-10-29 15:29:13 -07:00
Behdad Esfahbod
c7c5df9ffd
Try fixing older bots
...
Older C++ doesn't allow struct-with-constructor in union.
2018-10-29 15:16:52 -07:00
Behdad Esfahbod
be87959a67
[cmap] Minor
2018-10-29 15:16:38 -07:00
Behdad Esfahbod
35d410f2ba
Remove ASSERT_POD
...
Newer compilers / language allows structs with constructor in union.
So, this was not actually testing anything. Indeed, the recent
change in DISALLOW_COPY *is* making some of our types non-POD.
That broke some bots.
Just remove this since it wasn't doing much, and I'd rather have
DISALLOW_COPY.
2018-10-29 14:45:44 -07:00
Behdad Esfahbod
6f0454e176
Fix extra-semicolon warnings
2018-10-29 13:51:15 -07:00
Behdad Esfahbod
a256a92b3f
Make Array types uncopyable-unassignable
...
Finally! Catches hard-to-find errors like this:
- const SortedArrayOf<SVGDocumentIndexEntry> docs = this+svgDocEntries;
+ const SortedArrayOf<SVGDocumentIndexEntry> &docs = this+svgDocEntries;
We implement this for our array types. This, in turn, trickles down
into all types that embed the arrays. So, as long as we define all
open-ended structs in terms of Array types (all can be done using
UnsizedArrayOf), this achieves the goal of making uncopyable all
structs that are variable-sized. Yay!
2018-10-29 11:40:21 -07:00
Behdad Esfahbod
31cc1f74b7
[svg] Minor
2018-10-29 11:14:37 -07:00
Behdad Esfahbod
1366bb9760
Fix g-i warnings
2018-10-29 11:01:25 -07:00
Ebrahim Byagowi
ae802c2c6e
[test-ot-color] Minor
2018-10-29 13:42:14 +03:30
Ebrahim Byagowi
7170e35096
Rename deprecated symbols list file name and clean it up ( #1328 )
2018-10-29 13:11:01 +03:30
Ebrahim Byagowi
9c692e5b8d
[test-ot-color] Use public APIs on the tool
2018-10-29 12:22:39 +03:30
Ebrahim Byagowi
fb525f8943
Rename dump-emoji to test-ot-color
2018-10-29 11:40:06 +03:30
Ebrahim Byagowi
81bcf47e9e
Revive dump-emoji
2018-10-29 11:40:06 +03:30
Ebrahim Byagowi
f10252b4b6
[svg] Fix incorrect array referencing
2018-10-29 10:29:58 +03:30
Behdad Esfahbod
5eb251aab0
[cbdt] Implement strike selection logic
2018-10-28 23:16:13 -07:00
Behdad Esfahbod
98bddbc8ef
[sbix] Minor
2018-10-28 23:14:15 -07:00
Behdad Esfahbod
8cffee0577
[cbdt] Simplify more
2018-10-28 23:07:59 -07:00
Behdad Esfahbod
574579d376
[color] Rename get_strike() to choose_strike()
2018-10-28 23:04:37 -07:00
Behdad Esfahbod
e2ba96da4c
[cbdt] Refactor get_strike()
2018-10-28 23:01:57 -07:00
Behdad Esfahbod
6983cca9c8
[cbdt] Minor
2018-10-28 22:46:18 -07:00
Behdad Esfahbod
e998fb9fbf
[color] Round extents when scaling
2018-10-28 22:45:53 -07:00
Ebrahim Byagowi
c929ccfcea
[ot-color/png] Consider strike ppem on scaling
2018-10-28 22:40:40 -07:00
Behdad Esfahbod
a8c9facf7a
[svg] Cosmetic
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
9c1460e568
[svg] Use SortedArrayOf.bsearch
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
18dd6363a5
[svg] Minor
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
4876c938a2
[sbix] Comment
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
519fca1014
[color] Minor
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
e8ff27c208
Minor
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
6562172381
[sbix] Use LOffsetLArrayOf<>
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
a3ddd8067f
[sbix] Add get_strike
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
95524ed9bc
[sbix] Remove sbix_len
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
69e9846452
[sbix] Fix get_glyph_blob() on Null object
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
4e0ee2af09
[sbix] Simplify ppem access
...
If struct members are simple and needed publicly, we make them public.
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
6ac9a4eaa3
[sbix] Simplify glyph_length calc
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
0730d62385
[sbix] Check glyph data end is in range
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
b76dc03108
[sbix] Reduce code
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
50fb02a219
[sbix] Check glyph id before looking into unsafe array
...
That 'Z' at end of imageOffsetsZ is a reminder that you should check...
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
a8cb9c73da
[sbix] Simplify 'dupe' handling logic
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
d7eb534e59
[sbix] Check offsets before proceeding
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
c8380bd3e4
[color] Remove more dump-emoji cruft
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
68f2c832c8
Remove dump-emoji
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
b46de42b3a
[sbix] Fix order of parameters
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
a91cda72ab
[sbix] Remove redundant parameter
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
c712005f55
[sbix] Add get_strike()
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
400bc3f030
[sbix] Remove a couple of extra checks
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
3770282c83
[sbix] Rename sbix_table to table in accelerator
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
7346841807
[cbdt] Rename reference_blob_for_glyph() to reference_png()
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
1f33b8525d
[sbix] Rename ugly reference_blob_for_glyph() to reference_png()
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
946b534419
[sbix] Fix uninitialized variables
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
01c7d53fb7
[sbix] Select best strike based on ppem
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
f9f26bff4c
[sbix] Move code around. Add get_extents()
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
48bc3039cb
[sbix] Check blob length against PNG header leangth
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
d3ec31a57c
[ot-color] More on PNGHeader fields
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
35fa3d3260
[ot-color] Apply Behdad comment
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
307d61867a
[ot-color] Make PNGHeader reading actually work
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
632e9af862
[ot-color] Implement PNGHeader and test it, it doesn't work however
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
38706a0746
[ot-color] Preparation for setting PNG width/height in extents
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
d6d6f3bc22
[docs] Add comment
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
3d4c1f6a41
[ot-color] Apply Behdad reviews
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
8ef0d2ef92
[ot-color] Apply Behdad comment
2018-10-28 18:33:10 -07:00
Ebrahim Byagowi
dbd419bede
[ot-color] Add public API for CBDT/sbix/SVG color Emojis
2018-10-28 18:33:10 -07:00
Behdad Esfahbod
6ce49a921a
[name] Change hb_name_id_t back to unsigned int
...
d941f66c75 (commitcomment-31076011)
2018-10-28 08:26:30 -07:00
Behdad Esfahbod
a4f4f5ba5f
[docs] Fix titles here as well
2018-10-28 08:23:36 -07:00
Behdad Esfahbod
213b6dd335
[name] Make sure hb_name_id_t is int-sized
...
d941f66c75 (commitcomment-31068905)
2018-10-27 18:36:24 -07:00
Behdad Esfahbod
1d40d72f29
[docs] Hook up hb-var
2018-10-27 05:01:01 -07:00
Behdad Esfahbod
80d9a427cf
[docs] Document remaining sections
2018-10-27 04:58:32 -07:00
Behdad Esfahbod
cf5fa57f00
[docs] Change section titles again
...
I think I like the uniform "hb-*" more.
2018-10-27 04:51:42 -07:00
Behdad Esfahbod
04981ee05d
[docs] More
2018-10-27 04:47:41 -07:00
Behdad Esfahbod
5dd86aa33b
[docs] Rename section titles to object names
...
More useful.
2018-10-27 04:47:41 -07:00
Behdad Esfahbod
524fb70216
[docs] More
2018-10-27 04:47:41 -07:00
Behdad Esfahbod
46072b7cb5
[ot] Fold hb-ot-tag.h into hb-ot-layout.h
2018-10-27 04:47:41 -07:00
Behdad Esfahbod
00cf4e5eb6
[docs] Fill in some sections
2018-10-27 04:47:41 -07:00
Behdad Esfahbod
55a19d73b4
Move HB_EXTERN
2018-10-27 04:47:41 -07:00
Ebrahim Byagowi
524e854c15
Merge pull request #1318 from ebraminio/png
...
Add a non-hooked _png _svg get emoji blob
2018-10-27 15:04:43 +03:30
Ebrahim Byagowi
8180c37df0
[ot-color] Remove _png and _svg public APIs
2018-10-27 14:54:08 +03:30
Ebrahim Byagowi
9aa6279a2d
[ot-color/png] Try to get image blob from sbix first options.aat is set
2018-10-27 14:24:58 +03:30
Ebrahim Byagowi
b42661ee91
[ot-color] Add some documentation
2018-10-27 14:15:38 +03:30
Behdad Esfahbod
4ee3c8272c
[docs] Fix hb_name_id_t
...
Yep, was not recognized without this patch!
2018-10-27 03:18:45 -07:00
Ebrahim Byagowi
9435fb24da
[ot-color/png] Implement CBDT part
2018-10-27 13:47:11 +03:30
Behdad Esfahbod
d941f66c75
[name] Make hb_name_id_t be the enum
...
This is like hb_script_t.
We had this exposed as unsigned int since 2.0.0 release in two APIs,
as well as hb_ot_layout_get_size_params() from earlier.
But since no one uses those (right?!), let's just fix this now.
2018-10-27 03:06:14 -07:00
Behdad Esfahbod
40496a54a0
[name] Move HB_NAME_ID_INVALID into the enum
...
Don't know how to document anonymous enum members.
2018-10-27 03:06:14 -07:00
Behdad Esfahbod
a8a55b9f89
[name] Move around
2018-10-27 03:06:14 -07:00
Behdad Esfahbod
3b7e5f1313
[name] Rename hb_ot_name_get_names() to hb_ot_name_list_names()
...
And swap return value positions, so can be annotated for gobject-introspectin.
2018-10-27 03:06:14 -07:00
Behdad Esfahbod
4025ad8043
Document new API
2018-10-27 03:06:14 -07:00
Ebrahim Byagowi
5e2a52f71a
[sbix] Remove dump method from sbix accelerator
2018-10-27 12:44:33 +03:30
Ebrahim Byagowi
0353ac6cde
Fix test-name-table on older bots
2018-10-27 12:24:53 +03:30
Ebrahim Byagowi
dc11a38107
[sbix] Set num_glyphs on accelerator
...
dump-emoji was broken without it
2018-10-27 12:15:25 +03:30
Ebrahim Byagowi
6a38fd68a8
[ot-color/png] sbix runtime memory check
2018-10-27 11:17:27 +03:30
Behdad Esfahbod
ca645accb9
Comment
2018-10-27 00:39:31 -07:00
Ebrahim Byagowi
265ad408ca
[ot-color/png] Implement sbix part
2018-10-27 10:43:46 +03:30
Behdad Esfahbod
7f5941e162
Remove stale comment
...
Ugliness was fixed in 30eab97a00
But yeah, my smell detector was working. Ugliness was buggy.
2018-10-27 00:06:48 -07:00
Behdad Esfahbod
e7400c0275
[docs] Hook up new symbols
2018-10-26 22:24:40 -07:00
Behdad Esfahbod
6aa019c4af
[morx] Fix merge_cluster to end at last ligature component
...
Don't assume current position was a component in the ligature.
2018-10-26 22:02:17 -07:00
Behdad Esfahbod
00ae4be6bf
[morx] Fix bailing out ligation at end-of-text
...
Check was after a move_to, which wouldn't work.
Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=11147
2018-10-26 21:59:20 -07:00
Behdad Esfahbod
30eab97a00
Fix invalid memory read
...
Buffer might be relocated inside replace_glyphs().
Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=895117
2018-10-26 21:54:40 -07:00
Behdad Esfahbod
79b2fa62ca
[indic] Fix infinite loop
...
Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=863044
2018-10-26 21:22:26 -07:00
Behdad Esfahbod
39bd07aed5
Fix bunch of unused parameter warnings
...
Show up with gcc -O0.
There's a few more but those are functions that need to be filled in.
Maybe this is a lost battle...
2018-10-26 21:22:26 -07:00
Behdad Esfahbod
b2e1ec374c
[subset] Fix warning
2018-10-26 21:22:26 -07:00
Behdad Esfahbod
337ea0b717
[fuzzing] Remove HB_NDEBUG
...
Not sure why it ever was added.
2018-10-26 21:22:26 -07:00
Behdad Esfahbod
c965eeadbc
[name] Default to "en" if language is not specified
2018-10-26 21:22:26 -07:00
Behdad Esfahbod
3fd6e5dbef
[name] Add pre-defined nameIDs
2018-10-26 21:22:26 -07:00
Behdad Esfahbod
20d0171d20
[name] Fill out most missing language codes
2018-10-26 21:22:26 -07:00
Behdad Esfahbod
622b014faf
[name] Skip enumerating names with unknown language
2018-10-26 21:22:26 -07:00