Log

Author Commit Date CI Message
Michiharu Ariza bf4eb2e4 2018-09-18T15:53:37 Added SourceSansPro-Regular along as CFF full-font test case derived "expected" subset fonts from fonttools then manually tweaked further so they resemble hb-subset output
Michiharu Ariza e75e7224 2018-09-17T15:34:39 include curve control points in extents this makes results consistent with FT also optimized handling of path end points
Michiharu Ariza 98b94f8b 2018-09-17T13:56:39 fix static_assert failure in OffsetTo<TopDict>
Michiharu Ariza d050ab8d 2018-09-17T13:07:29 Merge branch 'master' into cff-subset
Michiharu Ariza f0a4e0c2 2018-09-17T12:11:56 fix build attempt ^3
Michiharu Ariza f0d74971 2018-09-17T12:02:12 fix attempt ^2: unuse INT32_MAX/MIN
Michiharu Ariza 4d963a27 2018-09-17T11:28:33 fix build attempt
Behdad Esfahbod 388ab916 2018-09-17T19:29:34 [morx] Implement InsertionChain
Michiharu Ariza c0c85b85 2018-09-17T11:14:56 implemented get_glyph_extents with CFF1 Implemented path operators in a new struct PathProc hooked up to CSOpSet Added current point to CSInterpEnv
David Corbett d8d1e7df 2018-09-17T11:09:51 Don't enforce a native direction for Old Hungarian
Simon Hausmann 6a97d0f3 2018-09-17T10:33:34 Fix installation of cmake config when building with cmake (#1161) When building with the auto tools, the manually mantained harfbuzz-config.cmake is installed. When building with cmake, we can use cmake to generate the correct config files for us and install them.
Behdad Esfahbod 606bf574 2018-09-16T19:33:48 Revert forcing use of single-parameter static_assert() Some clang versions define static_assert as a macro apparently, so we cannot redefine it... This reverts commit 94bfea0ce6a7b4d5641c198d50751748a353df11. This reverts commit 4e62627831e7457ed60ff87712570065b14b200a.
Behdad Esfahbod cbcaba6f 2018-09-16T19:25:19 One more bot fix
Behdad Esfahbod 94bfea0c 2018-09-16T19:12:19 Fix build, another try
Behdad Esfahbod 89dd4b95 2018-09-16T18:11:46 Fix bots "Unused private member" warning turned error. ugh.
Behdad Esfahbod 4e626278 2018-09-16T18:09:36 Enforce single-param static_assert() only So we don't accidentally break it again.
Behdad Esfahbod f1a86e1e 2018-09-16T18:01:32 Remove unused try
Behdad Esfahbod ebd50b3c 2018-09-16T17:57:12 Fix static_assert
Behdad Esfahbod 10642b3f 2018-09-15T19:43:33 Disallow null-enabled offsets to unsized structures... ...like UnsizedArrayOf<>. This fixes a class of crasher bugs, mostly with color and AAT tables. We cannot use nullable offsets to varsized data that does not declare min_size, because it's nost safe to use our fixed-size null pool for types that have their size external. So, use non_null'able offsets for these. A further enhancement would be to make use of min_size in Null<> itself. Will try that after.
Behdad Esfahbod 9ff76c60 2018-09-15T18:31:14 [morx] Respect default feature settings Does NOT apply user-selected features. But at least now enables correct subtables.
Behdad Esfahbod 2f97da6e 2018-09-15T14:51:50 [aat] Change version field
Behdad Esfahbod 29c2bd17 2018-09-15T14:47:18 [morx] Add stub for InsertionChain
Behdad Esfahbod f8ccb545 2018-09-14T18:59:53 [dfont] Disable null-processsing for offsets An offset to unsized arrayis not safe to be redirected to our fixed-sized null pool. Plus, we want to reject, not repair, bad-looking dfonts.
Behdad Esfahbod 01b9148d 2018-09-14T14:23:09 [unicode] Move Fitzpatrick hack from ot-layout into unicode.hh
Behdad Esfahbod 6ebbf514 2018-09-14T12:15:53 Minor
Behdad Esfahbod 957dbed3 2018-09-14T12:14:42 Fix builds
Behdad Esfahbod 4653e6cf 2018-09-14T11:31:33 [aat] Add enums for pre-defined state and classes Not sure how I didn't add before...
Behdad Esfahbod 67449c39 2018-09-14T10:58:00 Don't dereference offset before check_struct()
Michiharu Ariza f2c4720a 2018-09-13T12:44:00 Merge branch 'master' into cff-subset
Behdad Esfahbod ca746f26 2018-09-13T20:35:21 [dfont] Also check dataLen range in sanitize Just to disagree with myself re being done with this code...
Behdad Esfahbod 3789c557 2018-09-13T20:30:04 [dfont] Solve the mystery +2 offset thing! Previously, ResourceForkHeader was defined as 30 bytes, having the typeCountM1 as last member. There was a mysterious offset-by-2 in the code, derived from FontTools and JDK code this was ported from. In testing, I observed that typeListZ offset is actually 28. Suggesting that the typeCountM1 does NOT actually belong to ResourceForkHeader, but belongs to the array itself. Adjusting for that resolves the mystery +2 offset hack, so everything is clean and good now. This, concludes my dfont hacking. The code looks great now, and I'm happy to leave it. Fuzzers might disagree though, we will see!
Behdad Esfahbod effc7ced 2018-09-13T20:21:54 Rename HeadlessArrayOf::len to lenP1 So it doesn't accidentally match our templates, etc.
Michiharu Ariza 1234a813 2018-09-13T10:55:56 add head table to CFF/CFF2
Behdad Esfahbod 180a88a9 2018-09-13T19:19:57 [dfont] Some more
Behdad Esfahbod 0ab0f1e5 2018-09-13T19:13:01 [dfont] Push methods further down
Behdad Esfahbod 8c9bdcc1 2018-09-13T19:08:22 [dfont] Minor
Behdad Esfahbod 4479d3a2 2018-09-13T19:05:59 [dfon]t Sanitize OpenTypeFontFace
Behdad Esfahbod 3fba4190 2018-09-13T18:49:16 [dfont] Minor
Behdad Esfahbod bf852f0e 2018-09-13T18:47:53 [dfont] Make test pass Offset 0 is not null in this context.
Behdad Esfahbod 29faebe9 2018-09-13T18:45:35 Allow Offset<>'s that have no 0==null
Behdad Esfahbod 82f4d776 2018-09-13T18:27:20 [dfont] Minor
Behdad Esfahbod 07e0ca93 2018-09-13T17:39:09 [bytes] Rename content to arrayZ
Behdad Esfahbod dbb764dc 2018-09-13T16:49:26 [dfont] Clean up sanitize() I don't think I broke anything. Fuzzers will let me know..
Behdad Esfahbod 361fc268 2018-09-13T16:47:33 Fix OffsetTo::sanitize() after reshuffling
Behdad Esfahbod 4c6b0fb5 2018-09-13T16:39:30 OffsetTo::sanitize() Add version with three user_data
Behdad Esfahbod a73bea69 2018-09-13T16:31:31 OffsetTo::sanitize() more shuffling
Behdad Esfahbod b482e523 2018-09-13T16:29:49 OffsetTo::sanitize() reshuffling
Michiharu Ariza 3cae9c75 2018-09-12T17:23:08 fixed hb_plan_subset_cff_fdselect FDSelect3/4 sentinel size wasn't taken into account
Michiharu Ariza 0f159a38 2018-09-12T16:08:54 fixed serialize_fdselect_3_4
Michiharu Ariza 1608481d 2018-09-12T13:22:19 fixed bugs in Charset serialization also some code cleanup
Michiharu Ariza f45ac629 2018-09-11T22:41:50 fixed name mixup in Remap::reset it was causing inconsistent Strings Index subset results
Michiharu Ariza 497e7fb2 2018-09-11T16:47:55 misc bug fixes Added OpCode_FontMatrix to TopDictOpSet (yet to parse values) fixed a wrong assert in encode_int
Michiharu Ariza 5b453f77 2018-09-11T16:20:39 fixed off-by-one error with offSize
Michiharu Ariza 1499029a 2018-09-11T13:56:52 fixed a bug
Michiharu Ariza 0bd5912a 2018-09-11T13:24:27 make parse_bcd locale free
Michiharu Ariza bb38d0f6 2018-09-11T10:43:15 Implement parse_bcd
Michiharu Ariza 45e564a5 2018-09-11T09:46:37 Merge branch 'master' into cff-subset
Behdad Esfahbod bd75fd45 2018-09-11T18:12:26 [dfont] Some renaming, plus add link to reference doc
Behdad Esfahbod 4134ec13 2018-09-11T17:56:03 [dfont] Sanitize only sfnt resources as OpenTypeFontFile
Behdad Esfahbod 6b5e4d07 2018-09-11T17:26:24 [dfont] Minor
Behdad Esfahbod d5c50927 2018-09-11T17:18:21 [dfont] Fix test expecatation and minor touch up I have no way to authoritatively know, but looks like test font only has one face. So, adjust test expectation instead.
Ebrahim Byagowi 2b2ed1e5 2018-07-02T17:26:43 [dfont] Add test
Behdad Esfahbod 9479ffef 2018-09-11T16:41:26 [dfont] Re-enable and fix offset handling Fixes https://github.com/harfbuzz/harfbuzz/pull/1085
Behdad Esfahbod a1814e2b 2018-09-11T14:45:23 Whitespace
Behdad Esfahbod 383060cc 2018-09-11T14:41:19 [ft] Invalidate advance cache if font size changed
Behdad Esfahbod 54998bef 2018-09-11T14:35:26 [ft] Cache advances I decided to always use the cache, instead of my previous sketch direction that was to only allocate and use cache if fast advances are not available. The cache is a mere 1kb, so just use it... TODO: Invalidate cache on font size change. Fixes https://github.com/harfbuzz/harfbuzz/issues/651 Fixes https://github.com/harfbuzz/harfbuzz/pull/1082
Behdad Esfahbod f90bab85 2018-09-11T14:21:15 [util] Add --ft-load-flags Useful for performance testing. Not hooked to cairo yet. Just changes shaping, not rasterization.
Behdad Esfahbod 93f75962 2018-09-11T14:11:10 [util] Add -n shorthand for --num-iterations Meh.
Behdad Esfahbod 047a84c5 2018-09-11T14:05:16 [ft] Towards caching slow get_h_advance results Related to https://github.com/harfbuzz/harfbuzz/pull/1082
Behdad Esfahbod 237f2153 2018-09-11T13:05:47 [ft] Add advances() callback
Behdad Esfahbod cbea7d49 2018-09-11T12:56:17 [ot-font] Rename
Behdad Esfahbod d8a67dac 2018-09-11T12:55:54 [ot-font] Add advances() callbacks
Behdad Esfahbod 0ea42e11 2018-09-11T12:22:42 [cache] Minor
Behdad Esfahbod 0f520ada 2018-09-11T12:02:34 Revert "Remove unused hb_cache_t" This reverts commit 473b17af4d421f4ce7ac18c769731bb2aa4088f8. Updates to recent changes.
Behdad Esfahbod cfdea884 2018-09-11T10:57:48 [random] Switch to 32bit RNG
Behdad Esfahbod 08260c70 2018-09-11T10:51:19 [random] Shuffle
Behdad Esfahbod 71c9f84e 2018-09-10T22:37:19 Make --features rand=1 available to the user Use rand=255 to mean "randomize". Part of https://github.com/harfbuzz/harfbuzz/pull/803
Behdad Esfahbod cc1c4fdf 2018-09-10T16:36:05 Respect user's wish if they set rand feature manually Except if the set it to 1, which would mean "randomize"... Ugly.
Behdad Esfahbod 80de4bcd 2018-09-10T16:24:52 Minor clean up of 'rand' patchset
David Corbett b545e27d 2018-02-23T12:22:32 Don't seed the RNG from the contents of the buffer
David Corbett 2de96e84 2018-01-27T19:48:38 Test 'rand'
David Corbett f05df643 2018-01-26T21:36:15 Allow requesting a specific glyph for 'rand' Randomization only happens by default. If the user specifies a value for 'rand', that value is respected.
David Corbett c2a75e07 2018-01-25T14:22:03 Implement 'rand'
Michiharu Ariza c6f75c30 2018-09-10T17:02:31 fix build attempt
Behdad Esfahbod 96471fe8 2018-09-11T01:39:23 [uniscribe] Fix build
Michiharu Ariza cc52e53c 2018-09-10T16:27:49 Removed unused subr subset code
Behdad Esfahbod becd84aa 2018-09-11T01:26:18 Add HB_FEATURE_GLOBAL_START/END Fixes https://github.com/harfbuzz/harfbuzz/issues/1141 New API: HB_FEATURE_GLOBAL_START HB_FEATURE_GLOBAL_END
Behdad Esfahbod 13a8786c 2018-09-11T01:07:06 Add (unused) hb_array_t<>
Behdad Esfahbod bccf3e18 2018-09-11T01:04:50 Minor
Behdad Esfahbod dff2c45f 2018-09-10T23:29:26 Port rest from VAR to UnsizedArrayOf<>
Michiharu Ariza 1666b89e 2018-09-10T16:00:20 subset CFF1 String Index Repurposed FDMap as Remap then subclassed for remapping SIDs misc code cleanup
Behdad Esfahbod 9507b05a 2018-09-10T23:18:07 Simplify sanitize->check_array() Fix a bug in CBDT sanitize, and redundant check in avar.
Behdad Esfahbod bc485a98 2018-09-10T23:02:24 Port some VAR arrays to UnsizedArrayOf<> Fix avar sanitize().
Behdad Esfahbod 1bc7a8d6 2018-09-10T22:51:26 [indic] Cache hb_options().uniscribe_bug_compatible on indic_plan
Behdad Esfahbod 24f1d962 2018-09-10T18:19:37 Unbreak HB_OPTIONS Fixes https://github.com/harfbuzz/harfbuzz/issues/1154
Behdad Esfahbod e46c51f1 2018-09-10T17:38:19 [indic] Do NOT allow matra after Halant,ZWJ Fixes https://github.com/harfbuzz/harfbuzz/issues/556 Devanagari regresses 12 tests, and Gujarati 2. See: https://github.com/harfbuzz/harfbuzz/issues/556#issuecomment-419957472 New numbers: BENGALI: 353725 out of 354188 tests passed. 463 failed (0.130722%) DEVANAGARI: 707299 out of 707394 tests passed. 95 failed (0.0134296%) GUJARATI: 366353 out of 366457 tests passed. 104 failed (0.0283799%) GURMUKHI: 60729 out of 60747 tests passed. 18 failed (0.0296311%) KANNADA: 951300 out of 951913 tests passed. 613 failed (0.0643966%) MALAYALAM: 1048136 out of 1048334 tests passed. 198 failed (0.0188871%) ORIYA: 42327 out of 42329 tests passed. 2 failed (0.00472489%) SINHALA: 271596 out of 271847 tests passed. 251 failed (0.0923313%) TAMIL: 1091754 out of 1091754 tests passed. 0 failed (0%) TELUGU: 970555 out of 970573 tests passed. 18 failed (0.00185457%)
Behdad Esfahbod 5dfd6e07 2018-09-10T15:45:32 Fix sanitize or Context Rule Fixes https://github.com/harfbuzz/harfbuzz/issues/1110
Behdad Esfahbod 20a11a82 2018-09-10T13:56:28 Revert "[subset] Disable GSUB/GPOS subsetting for now" This reverts commit 616fd34a69bb69bc35c7e4ea939e71c3ea2e92cb.
Behdad Esfahbod 54d332dd 2018-09-10T11:37:24 1.9.0
Behdad Esfahbod 616fd34a 2018-09-10T11:19:49 [subset] Disable GSUB/GPOS subsetting for now So I can get a release out. I haven't debugged those yet, and they are producing bad tables.