Zero King [Fri, 26 Jul 2019 15:43:51 +0000 (15:43 +0000)]
[util] Fix memory leak
Ebrahim Byagowi [Fri, 26 Jul 2019 12:16:04 +0000 (16:46 +0430)]
[metrics] Expose raw OS2/HHEA asc/dsc values using private tags (#1867)
Ebrahim Byagowi [Thu, 25 Jul 2019 20:44:37 +0000 (01:14 +0430)]
[meta] minor, simplify iterator
Ebrahim Byagowi [Thu, 25 Jul 2019 20:00:29 +0000 (00:30 +0430)]
[meta] Rename ot-metadata to ot-meta per review
Ebrahim Byagowi [Thu, 25 Jul 2019 19:38:58 +0000 (00:08 +0430)]
Use .sub_array for DataMap tags iteration
Ebrahim Byagowi [Tue, 23 Jul 2019 22:40:41 +0000 (03:10 +0430)]
[meta] Add max value to hb_ot_metadata_t
Ebrahim Byagowi [Tue, 23 Jul 2019 22:38:34 +0000 (03:08 +0430)]
[meta] Add a test program for metadata
Ebrahim Byagowi [Tue, 23 Jul 2019 21:58:09 +0000 (02:28 +0430)]
[meta] hb_ot_metadata_get_entries, tags iteration API
Ebrahim Byagowi [Mon, 22 Jul 2019 19:05:08 +0000 (23:35 +0430)]
[meta] New API, hb_ot_metadata_reference_entry for fetching meta entries
Ebrahim Byagowi [Thu, 25 Jul 2019 21:49:22 +0000 (02:19 +0430)]
minor spacing fix (#1869)
Ebrahim Byagowi [Thu, 25 Jul 2019 21:42:06 +0000 (02:12 +0430)]
[feat] minor
Ebrahim Byagowi [Thu, 25 Jul 2019 18:52:00 +0000 (23:22 +0430)]
[metrics] Add a test that actually practices variation (#1858)
Ebrahim Byagowi [Thu, 25 Jul 2019 10:19:02 +0000 (14:49 +0430)]
Add _MAX_VALUE to hb_ot_metrics_t (#1861)
Ebrahim Byagowi [Thu, 25 Jul 2019 09:57:43 +0000 (14:27 +0430)]
minor
Ebrahim Byagowi [Thu, 25 Jul 2019 09:56:30 +0000 (14:26 +0430)]
Add _MAX_VALUE to disabled baseline types enum
Ebrahim Byagowi [Tue, 23 Jul 2019 20:17:19 +0000 (00:47 +0430)]
Replace 0x7FFFFFFFu in enums with HB_TAG_MAX_SIGNED
Ebrahim Byagowi [Mon, 22 Jul 2019 18:20:21 +0000 (22:50 +0430)]
minor, comment out meta table in list till its use
Khaled Hosny [Mon, 22 Jul 2019 14:44:47 +0000 (16:44 +0200)]
Merge pull request #1851 from khaledhosny/fix-sbix-extents
Fix sbix glyph extents
Ebrahim Byagowi [Mon, 22 Jul 2019 14:16:52 +0000 (18:46 +0430)]
Implement meta table parsing
Ebrahim Byagowi [Mon, 22 Jul 2019 14:05:55 +0000 (18:35 +0430)]
[metrics] Fix _get_variation API to works with actual coord values
Behdad Esfahbod [Mon, 22 Jul 2019 11:48:32 +0000 (07:48 -0400)]
[metrics] _-prefix internal symbol
Behdad Esfahbod [Mon, 22 Jul 2019 11:07:37 +0000 (07:07 -0400)]
Fix warning on IBM compilers
Fixes https://github.com/harfbuzz/harfbuzz/issues/1852
Khaled Hosny [Mon, 22 Jul 2019 01:57:24 +0000 (03:57 +0200)]
Fix sbix glyph extents
* The ‘height’ needs to be negated since the API returns “distance from
top to bottom side”.
* Similarly, the ‘y_offset‘ needs to be added to the height to get the
‘y_bearing’, since sbix’s offset is “the point in the glyph relative
to its lower-left corner which corresponds to the origin” while
‘y_bearing’ is the “top side of glyph from origin”.
With these changes the sbix glyph metrics return values similar to other
tables, as they were otherwise unusable.
Ebrahim Byagowi [Sun, 21 Jul 2019 21:36:07 +0000 (02:06 +0430)]
[metrics] Don't use metrics API in _common
As it is exposed with a different condition
Ebrahim Byagowi [Tue, 16 Jul 2019 17:57:01 +0000 (22:27 +0430)]
Add hb_gdi_face_create API
Based on Konstantin Ritt work posted on mailing list
Ebrahim Byagowi [Sun, 21 Jul 2019 08:08:04 +0000 (12:38 +0430)]
[metrics] minor, tweak comment
Behdad Esfahbod [Fri, 19 Jul 2019 18:19:31 +0000 (11:19 -0700)]
[docs] Minor
Ebrahim Byagowi [Sat, 20 Jul 2019 18:33:51 +0000 (23:03 +0430)]
Revert hhea fallback to OS/2 to its reverse way
As searching number of hhea having fonts beats the number of OS/2
having ones in macOS 10.14.2
Ebrahim Byagowi [Sat, 20 Jul 2019 10:31:37 +0000 (15:01 +0430)]
Bring back asc/desc abs logic used to be in hmtx table
Ebrahim Byagowi [Sat, 20 Jul 2019 10:20:31 +0000 (14:50 +0430)]
Make HB_TINY builds work again by separating the always needed part
Ebrahim Byagowi [Sat, 20 Jul 2019 10:03:57 +0000 (14:33 +0430)]
Merge _get_position_internal into _get_position
Ebrahim Byagowi [Sat, 20 Jul 2019 09:33:36 +0000 (14:03 +0430)]
Define post table only when used
Ebrahim Byagowi [Sat, 20 Jul 2019 09:30:20 +0000 (14:00 +0430)]
Merge ot-metrics-internal.cc with ot-metrics now that isn't needed in subset
Ebrahim Byagowi [Sat, 20 Jul 2019 09:22:21 +0000 (13:52 +0430)]
Don't cache ascender/descender metrics
Ebrahim Byagowi [Sat, 20 Jul 2019 09:38:11 +0000 (14:08 +0430)]
[doc] minor, improve hb-ot-metrics doc a bit
Ebrahim Byagowi [Sat, 20 Jul 2019 08:46:16 +0000 (13:16 +0430)]
Merge pull request #1844 from ebraminio/hhea
Fallback hhea's ascender/descender to OS2
Ebrahim Byagowi [Sat, 20 Jul 2019 08:23:40 +0000 (12:53 +0430)]
[os2] minor spacing tweaks
Ebrahim Byagowi [Sat, 20 Jul 2019 08:21:38 +0000 (12:51 +0430)]
Fallback hhea's ascender/descender to OS2
Behdad Esfahbod [Fri, 19 Jul 2019 18:13:50 +0000 (11:13 -0700)]
[metrics] Fall back to hhea if OS2 metrics are empty
Reinstates previous logic, even if it might be unnecessary.
Ebrahim Byagowi [Fri, 19 Jul 2019 07:11:07 +0000 (11:41 +0430)]
Add HB_NO_METRICS and fix HB_TINY build (#1839)
Ebrahim Byagowi [Fri, 19 Jul 2019 06:03:00 +0000 (10:33 +0430)]
[ci][fuzzer] print valgrind failure if an error happened
Behdad Esfahbod [Thu, 18 Jul 2019 21:25:45 +0000 (14:25 -0700)]
[metrics] Fix weird use of xor
I believe that was a try to use one approach as fallback to other. But
felt wrong. Just believe what's in OS/2 table to be correct.
Behdad Esfahbod [Thu, 18 Jul 2019 21:15:08 +0000 (14:15 -0700)]
[ot-metrics] Touch up
Ebrahim Byagowi [Tue, 20 Nov 2018 19:56:46 +0000 (23:26 +0330)]
Implement a simple API for fetching opentype metrics
Fixes https://github.com/harfbuzz/harfbuzz/pull/1432
David Corbett [Mon, 17 Jun 2019 14:16:24 +0000 (10:16 -0400)]
Revert "[Myanmar] Prevent reordering between Asat and Dot below"
This reverts commit
1c8654ead41ca746d577549c92d2a41c594ab639.
Ebrahim Byagowi [Wed, 17 Jul 2019 18:27:46 +0000 (22:57 +0430)]
[ci] Bring back -linux-arm64 bot
Let's see if 576065b has fixed it
Behdad Esfahbod [Wed, 17 Jul 2019 18:20:08 +0000 (11:20 -0700)]
Revert "Revert previous change"
This reverts commit
b8e90ca1a10fbd472eda1aa8cc3797011da52356.
Works now.
Behdad Esfahbod [Wed, 17 Jul 2019 18:19:34 +0000 (11:19 -0700)]
[iter] Fix reduce type deduction
Ebrahim Byagowi [Wed, 17 Jul 2019 17:38:39 +0000 (22:08 +0430)]
[ci] Disable -linux-arm64 bot
This is its failure https://circleci.com/gh/harfbuzz/harfbuzz/99864
Trying to fix like ee05627, interestingly, makes the bot and the
others to fail like this https://circleci.com/gh/harfbuzz/harfbuzz/99841
Ebrahim Byagowi [Wed, 17 Jul 2019 17:08:19 +0000 (21:38 +0430)]
Revert previous change
Interestingly all of the bots disagreed with the change and the complain is... weird.
Ebrahim Byagowi [Wed, 17 Jul 2019 16:58:25 +0000 (21:28 +0430)]
Improve syntax to make out linux-arm64 a little happy
Decided to apply is we did the same on other places however this won't
fix all of its complains
Ebrahim Byagowi [Wed, 17 Jul 2019 16:52:38 +0000 (21:22 +0430)]
Downgrade -Wdeprecated-declarations to warning
Fixes #1834 at least till fix of #1829
Behdad Esfahbod [Wed, 17 Jul 2019 16:35:56 +0000 (09:35 -0700)]
[amalgam] Fix redundant-declaration warning/error
Ali Javadi [Tue, 16 Jul 2019 17:40:24 +0000 (22:10 +0430)]
Fix C++20 compile warning on implicit capture of this with '=' default capture (#1833)
Happens when compiled with -std=c++2a, the fix just makes the captures explicit to resolve the issue. Just adding this in addition to = doesn't work in C++11.
src/hb-ot-layout-gpos-table.hh:737:18: warning: implicit capture of 'this' with a capture default of '=' is deprecated [-Wdeprecated-this-capture]
{ return (this+_).intersects (glyphs, valueFormat); })
^
src/hb-ot-layout-gpos-table.hh:736:16: note: add an explicit capture of 'this' to capture '*this' by reference
| hb_map ([=] (const OffsetTo<PairSet> &_)
^
, this
Ebrahim Byagowi [Tue, 16 Jul 2019 06:54:29 +0000 (11:24 +0430)]
[usp] define atfree callback only if used
Qunxin Liu [Wed, 26 Jun 2019 20:23:24 +0000 (13:23 -0700)]
[subset] For option "--unicodes", add support for "*" to retain all code points
Behdad Esfahbod [Fri, 12 Jul 2019 22:38:35 +0000 (15:38 -0700)]
Revert "Update Graphite API to latest (#1215)"
This reverts commit
e4e74c2751ac24178086cce2811d34d8019b6f85.
See https://github.com/harfbuzz/harfbuzz/issues/1829
Ebrahim Byagowi [Thu, 11 Jul 2019 10:40:36 +0000 (15:10 +0430)]
[fuzz] Increase subset runner timeout for tsan bot
Now is flaky let's just increase and maybe investigate later
Ebrahim Byagowi [Thu, 11 Jul 2019 10:01:55 +0000 (14:31 +0430)]
[fuzz] Don't fail when blob is empty
And enable more tests able to trig the issue.
Ebrahim Byagowi [Wed, 10 Jul 2019 21:05:06 +0000 (01:35 +0430)]
Fix unintialized memory read in cmap subset (#1826)
Ebrahim Byagowi [Wed, 10 Jul 2019 12:11:40 +0000 (16:41 +0430)]
Don't call memcpy when a table is empty
Ebrahim Byagowi [Wed, 10 Jul 2019 09:58:06 +0000 (14:28 +0430)]
Force blob generation and memory check in hb-subset-fuzzer
Dominik Röttsches [Mon, 8 Jul 2019 07:19:49 +0000 (10:19 +0300)]
Revert "Minor" - revert moving extern "C" definitions in-function
This reverts commit
62e60322cb9e18b3ee75f1b4a2a6d3069f587407 since it
breaks building HarfBuzz as part of Chromium.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1821.
Behdad Esfahbod [Fri, 5 Jul 2019 20:56:45 +0000 (13:56 -0700)]
[font] Remove division when scaling
Yoohoo. This seems to be precise enough! Let's see if it sticks.
I'm asking Dominik to run this in Chrome test suite and report.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1801
Behdad Esfahbod [Fri, 5 Jul 2019 20:52:09 +0000 (13:52 -0700)]
[font] Keep font-space to user-space multiplier
Part of https://github.com/harfbuzz/harfbuzz/issues/1801
Behdad Esfahbod [Fri, 5 Jul 2019 20:45:15 +0000 (13:45 -0700)]
Make face immutable in hb_font_set_face()
Behdad Esfahbod [Fri, 5 Jul 2019 20:18:05 +0000 (13:18 -0700)]
[ot-font] Optimize rounding
Part of https://github.com/harfbuzz/harfbuzz/issues/1801
The assumption that compiler optimizes "upem/2" to a shift only
works if upem is unsigned... Anyway, spoon-feed the compiler.
Simon Sapin [Fri, 5 Jul 2019 17:05:11 +0000 (19:05 +0200)]
Clusters are reversed based on the direction, not script
Fixes https://github.com/harfbuzz/harfbuzz/issues/1818
Simon Sapin [Thu, 4 Jul 2019 19:06:59 +0000 (21:06 +0200)]
Docs: fix a typo in function name
Simon Sapin [Thu, 4 Jul 2019 21:05:50 +0000 (23:05 +0200)]
hb_set_previous_range docs: fix presumed copy/paste error
Simon Sapin [Thu, 4 Jul 2019 21:03:45 +0000 (23:03 +0200)]
Docs typo fix: slower → lower
Ebrahim Byagowi [Fri, 5 Jul 2019 14:16:41 +0000 (18:46 +0430)]
[amalgam] Use it in cmake port and fix conflicts (#1812)
Behdad Esfahbod [Wed, 3 Jul 2019 19:17:57 +0000 (12:17 -0700)]
[amalgam] Include integration source files as well
Just for those that are normally built into libharfbuzz itself.
Part of https://github.com/harfbuzz/harfbuzz/issues/1809
Behdad Esfahbod [Wed, 3 Jul 2019 19:10:03 +0000 (12:10 -0700)]
[amalgam] Rename hb.cc to harfbuzz.cc
Part of https://github.com/harfbuzz/harfbuzz/issues/1809
Behdad Esfahbod [Wed, 3 Jul 2019 02:44:18 +0000 (19:44 -0700)]
Revert "Use constexpr to replace passthru_ bools"
This reverts commit
c4aa10ebc8dc28b1f9c90af2ca2092a7535f8395.
Broke several compilers... Sigh. The version without constexpr
didn't fully optimize out the unreachable code on clang.
So, revert it is...
Behdad Esfahbod [Wed, 3 Jul 2019 02:15:03 +0000 (19:15 -0700)]
Use constexpr to replace passthru_ bools
Behdad Esfahbod [Wed, 3 Jul 2019 00:55:58 +0000 (17:55 -0700)]
Sprinkle constexpr around
Being conservative. Also not sure it makes any real difference
in our codebase.
Behdad Esfahbod [Wed, 3 Jul 2019 00:11:09 +0000 (17:11 -0700)]
Remove unused 'inline' specifier
Behdad Esfahbod [Tue, 2 Jul 2019 23:19:18 +0000 (16:19 -0700)]
[amalgam] Add hb.cc to git
Part of https://github.com/harfbuzz/harfbuzz/issues/1809
Behdad Esfahbod [Tue, 2 Jul 2019 23:07:03 +0000 (16:07 -0700)]
Minor
Behdad Esfahbod [Tue, 2 Jul 2019 23:02:13 +0000 (16:02 -0700)]
[amalgam] Fix UCD issue
This actually makes it build now!
Part https://github.com/harfbuzz/harfbuzz/issues/1809
Keeping open to add tests, CI, etc.
Behdad Esfahbod [Tue, 2 Jul 2019 23:00:58 +0000 (16:00 -0700)]
[amalgam] Fix CFF
Part of https://github.com/harfbuzz/harfbuzz/issues/1809
Behdad Esfahbod [Tue, 2 Jul 2019 22:23:00 +0000 (15:23 -0700)]
[amalgam] Finish fixing Indic-like shapers
Part of https://github.com/harfbuzz/harfbuzz/issues/1809
Behdad Esfahbod [Tue, 2 Jul 2019 22:19:39 +0000 (15:19 -0700)]
[use] Remove Syriac features
This was non-standard, and unused anyway.
Behdad Esfahbod [Tue, 2 Jul 2019 22:17:56 +0000 (15:17 -0700)]
[amalgam] More Indic-like issues
Part of https://github.com/harfbuzz/harfbuzz/issues/1809
Behdad Esfahbod [Tue, 2 Jul 2019 22:09:26 +0000 (15:09 -0700)]
[amalgam] More
Part of https://github.com/harfbuzz/harfbuzz/issues/1809
Behdad Esfahbod [Tue, 2 Jul 2019 21:42:45 +0000 (14:42 -0700)]
[amalgam] Fix most duplicate-id instances in Indic-like shapers
Part of https://github.com/harfbuzz/harfbuzz/issues/1809
Behdad Esfahbod [Tue, 2 Jul 2019 21:26:45 +0000 (14:26 -0700)]
Add make rule to build hb.cc
Part of https://github.com/harfbuzz/harfbuzz/issues/1809
Behdad Esfahbod [Tue, 2 Jul 2019 21:18:38 +0000 (14:18 -0700)]
Add ucd-table make target
Michiharu Ariza [Sun, 30 Jun 2019 23:13:07 +0000 (16:13 -0700)]
add bimap test along with bug fix/tweaks
Ebrahim Byagowi [Mon, 1 Jul 2019 15:38:22 +0000 (20:08 +0430)]
Merge pull request #1806 from carlo-bramini/master
Make harfbuzz working on all existing versions of Windows
Ebrahim Byagowi [Mon, 1 Jul 2019 15:00:21 +0000 (19:30 +0430)]
[dwrite] Apply minor style improves
Carlo Bramini [Mon, 1 Jul 2019 14:06:43 +0000 (16:06 +0200)]
Fix error rised by GCC8+
Carlo Bramini [Mon, 1 Jul 2019 11:31:26 +0000 (13:31 +0200)]
Use lower case file name with #include
I tried to cross compile harfbuzz for Windows and an error was generated because `DWrite_1.h` was not found.
This happened because the filesystem is case sensitive and for this reason that include file was not found.
The right name of the file to be used is `dwrite_1.h`, with all letters not capitalized:
https://docs.microsoft.com/en-us/windows/desktop/api/dwrite_1/
I also verified in the installation of VS2017 with Windows Kit v10 and in that place it was also lower case.
So, in my opinion it should be better to change this.
Carlo Bramini [Sun, 30 Jun 2019 13:06:30 +0000 (15:06 +0200)]
Empty DIRECTWRITE_LIBS
Not used anymore since DWRITE is loaded dynamically.
Carlo Bramini [Sun, 30 Jun 2019 13:03:44 +0000 (15:03 +0200)]
Dynamically load DWRITE
Also checks if DWriteCreateFactory() has been executed successfully.
Behdad Esfahbod [Fri, 28 Jun 2019 23:00:37 +0000 (16:00 -0700)]
[config] Fix CoreText build with NO_AAT
Ebrahim Byagowi [Fri, 28 Jun 2019 19:30:00 +0000 (00:00 +0430)]
Apply some minor improves on CFFIndex
Ebrahim Byagowi [Fri, 28 Jun 2019 19:14:14 +0000 (23:44 +0430)]
minor, reuse StructAtOffset logic in StructAtOffsetOrNull
Ebrahim Byagowi [Fri, 28 Jun 2019 18:41:52 +0000 (23:11 +0430)]
minor style improve in hb-cff-interp-common.hh