Behdad Esfahbod
1ebaa090d8
Disable vectorization
...
Disable vectorization for now. To correctly use them, we should
use posix_memalign() to allocate them. Otherwise, can cause
misaligned access.
https://bugs.chromium.org/p/chromium/issues/detail?id=860184
2018-07-05 14:04:13 +04:30
Behdad Esfahbod
18a06f8a66
Fix warning
...
../../src/hb-ot-layout-gsubgpos-private.hh:391:18: warning: missed loop optimization, the loop counter may overflow [-Wunsafe-loop-optimizations]
2018-07-05 14:03:48 +04:30
Behdad Esfahbod
058708a665
Allow disabling vector_size use
2018-07-05 13:16:00 +04:30
Ebrahim Byagowi
d8a7dedc83
Use CreateFileW explicitly and pass wchar_t to it ( #1087 )
2018-07-04 15:33:39 +04:30
Behdad Esfahbod
9940504e93
[indic] Adjust left-matra repositioning and Halant,ZWJ sequence
...
From the new code (first paragraph is from the OT Devanagari spec.):
/* o Reorder matras:
*
* If a pre-base matra character had been reordered before applying basic
* features, the glyph can be moved closer to the main consonant based on
* whether half-forms had been formed. Actual position for the matra is
* defined as “after last standalone halant glyph, after initial matra
* position and before the main consonant”. If ZWJ or ZWNJ follow this
* halant, position is moved after it.
*
* IMPLEMENTATION NOTES:
*
* It looks like the last sentence is wrong. Testing, with Windows 7 Uniscribe
* and Devanagari shows that the behavior is best described as:
*
* "If ZWJ follows this halant, matra is NOT repositioned after this halant.
* If ZWNJ follows this halant, position is moved after it."
*
* Test case, with Adobe Devanagari or Nirmala UI:
*
* U+091F,U+094D,U+200C,U+092F,U+093F
* (Matra moves to the middle, after ZWNJ.)
*
* U+091F,U+094D,U+200D,U+092F,U+093F
* (Matra does NOT move, stays to the left.)
Fixes https://github.com/harfbuzz/harfbuzz/issues/1070
Test case added with Adobe Devanagari.
2018-07-03 14:34:38 +04:30
Behdad Esfahbod
2cb075fe26
Fix unused function '_hb_mapped_file_destroy' if no mmap
2018-07-03 13:04:05 +04:30
Behdad Esfahbod
343e8c694b
1.8.2
2018-07-03 12:43:59 +04:30
Behdad Esfahbod
29e7879bcf
Disable .dfont code for now
...
The get_table imple was wrong, as table offsets in a dfont are
relative to the resource. We were treating them as relative to
the big blob itself. To be fixed.
Part of https://github.com/harfbuzz/harfbuzz/pull/1085
2018-07-03 12:38:21 +04:30
Ebrahim Byagowi
32348a43c1
Fix trak table apply logic
...
In collaboration with Behdad
2018-07-01 15:32:43 +04:30
Ebrahim Byagowi
225b92b7d4
Support dfont font files ( #949 )
2018-07-01 14:32:00 +04:30
Ebrahim Byagowi
5d8cafcf6a
Improve nommap naming and use C style comments on create_from_file ( #1084 )
2018-07-01 01:54:14 +04:30
Behdad Esfahbod
d3c0980ac2
Adjust MarkBasePos heuristic in presence of MultipleSubst
...
From the issue:
"In this font, the virama,ya first forms a ligature, then decomposes back to
virama,ya. This causes those two to be marked parts of a MultipleSubst
sequence. When attaching the matra, we look for the first of the MultipleSubst
sequence because that's where we attach to (because of eg #740 ). In this case,
the first glyph in the MultipleSubst sequence is a mark, so we skip it and
attach to the base char before it."
Font in question is Nirmala UI from Windows 10. Test sequence:
U+0926,U+094D,U+092F,U+0941
Fixes https://github.com/harfbuzz/harfbuzz/issues/1020
2018-06-30 15:59:25 +04:30
Behdad Esfahbod
8b9cbe3b24
[indic] Tweak for old-spec Bengali and halant-ya-halant
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1073
2018-06-30 12:28:39 +04:30
punchcutter
9541c9dae1
Rebase and update USE overrides for Bhaiksuki Gap Fillers and Grantha Anusvara
2018-06-30 10:02:34 +04:30
Behdad Esfahbod
7b8dfac560
[khmer] Fix infinite-loop in cluster merging
...
Indic shaper already had this check. We removed it when forking
Khmer shaper by mistake.
Fixes https://bugzilla.mozilla.org/show_bug.cgi?id=1464623
2018-06-30 09:16:54 +04:30
Ebrahim Byagowi
25970a93aa
armcc compatibility, don't use EINTR if doesn't exist
...
Fixes #1081
2018-06-28 14:32:36 +04:30
Ebrahim Byagowi
8a51f91b70
Minor on hb_blob_create_from_file, reuse ferror result
...
Oops
2018-06-28 13:22:21 +04:30
Ebrahim Byagowi
7b4099f35f
Minor, rename blob to data on blob_from_file
2018-06-27 16:54:44 +04:30
Ebrahim Byagowi
fa090ed4d4
Minor touches on hb_blob_create_from_file ( #1079 )
...
* Handle EINTR on fallback reader
* Increase fallback reader limitation size limitation to 2 << 28
* Ensure _O_BINARY does exist if MMAP is used on Windows
(maybe superfluous but makes me more confident)
2018-06-27 14:13:26 +04:30
Behdad Esfahbod
01dff1ea1a
Make round() fallback portable to systems that do have round()
...
Makes compiling without HAVE_ROUND on systems that do have it work.
2018-06-26 18:00:58 -04:00
Ebrahim Byagowi
7db2e9ea38
Minor on hb_blob_create_from_file
...
Add one more "unlikely" annotation and use explicit nullptr check for more consistency.
2018-06-26 10:46:10 +04:30
Ebrahim Byagowi
35ce8f31d3
Unify our pipe reader with the fallback reader ( #1068 )
...
And assign one bot to use the path always using NOMMAPFILEREADER token.
It's limited to 200mb so no more fun with using /dev/zero on hb-view!
2018-06-25 22:23:43 +04:30
Behdad Esfahbod
b2a1879187
In Coverage iterator, bail out if table smells
...
In particular, if CoverageFormat2 has unsorted ranges, bail out.
Otherwise, 64k ranges of each 64k glyphs can DoS closure() method.
We can do the same for CoverageFormat1, but that one does not expose
the quadratic behavior, so, fine.
2018-06-23 10:32:28 -04:00
Ebrahim Byagowi
941f2b8548
Support pipe and friends on hb_blob_create_from_file ( #1061 )
...
With this hb-view/hb-shape support pipes and possibly socket and named pipe
also, anything fails just on mmap.
We can later do the same for Windows also.
This however reveals two issues, the fact most of our bots don't have HAVE_MMAP and using
this instead the other fread/fopen reader can make failure on CI. I should look at them separately
this change however is very low risk I believe.
2018-06-18 20:35:40 +04:30
Behdad Esfahbod
3654d9be6b
1.8.1
2018-06-12 19:38:04 -04:00
Behdad Esfahbod
f6893ef82c
Move hb-version.h generation to Makefile
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/864
Unfortunately 1.7.7 and 1.8.0 went out with the wrong hb-version.h contents.
2018-06-12 19:26:15 -04:00
Behdad Esfahbod
cc0b04f48f
[subset] Remove HB_SUBSET_BUILTIN
...
Just include hb-static.cc in libharfbuzz-subset.so source list as
well. Those building it built-in will include hb-static.cc once
already. No need for any gymnastics.
2018-06-12 18:24:54 -04:00
Behdad Esfahbod
ba0ea56efa
[substitute-closure] Rename function for clarity
2018-06-12 01:17:00 -04:00
Behdad Esfahbod
7b5ce41638
Whitespace
2018-06-12 01:17:00 -04:00
Behdad Esfahbod
c4d0d11c55
[vector] Always 0-fill new items
2018-06-12 01:17:00 -04:00
Behdad Esfahbod
a7e1b4a3b2
Fix compiler warning re reordering of initializations
2018-06-12 01:17:00 -04:00
Behdad Esfahbod
f56cd9df10
Style
2018-06-12 01:17:00 -04:00
Jonathan Kew
82484b05ca
[hb-set] Don't shrink vectors until after processing their contents.
...
Fixes #1054 .
2018-06-12 01:16:42 -04:00
Behdad Esfahbod
b8e406f0c7
More fixes for SunStudio 12.6 build
...
Followup to https://github.com/harfbuzz/harfbuzz/pull/1053
2018-06-10 17:22:38 -04:00
prrace
498e4373dc
Fix SunStudio 12.6 build ( #1053 )
2018-06-10 03:34:28 +04:30
Garret Rieger
46f7e7760f
[subset] Use REPLACEME instead of version.
2018-06-08 12:09:34 -06:00
Garret Rieger
feb23892a3
[subset] Use gsub closure if ot layout is not being dropped.
2018-06-08 12:09:34 -06:00
Garret Rieger
a5673da9be
[subset] Add drop_ot_layout setting to subset input.
2018-06-08 12:09:34 -06:00
Garret Rieger
57badadb76
[subset] add a new closure call to hb-ot-layout that can compute the closure over multiple lookups.
2018-06-06 17:50:12 -06:00
Behdad Esfahbod
11f1f4131b
[set] Add is_subset
...
New API:
+hb_set_is_subset()
2018-06-06 16:47:13 -07:00
Garret Rieger
45186b9b8c
[subset] Add memoization of GSUB lookup closures.
2018-06-06 16:53:50 -06:00
Behdad Esfahbod
78d92e0f27
Minorish
2018-06-06 15:24:43 -07:00
Behdad Esfahbod
676b19f0d1
Compiler gymnastics
...
Part of https://github.com/harfbuzz/harfbuzz/issues/630
2018-06-06 15:23:35 -07:00
Behdad Esfahbod
0a5952e8dd
Move prime_for back into map
...
This was causing problem on systems without visibility when map was used
from both libharfbuzz and libharfbuzz-subset. Sigh.
https://ci.appveyor.com/project/harfbuzz/harfbuzz/build/1.0.1669/job/dey47nmff0770vp3
2018-06-06 14:56:21 -07:00
David Corbett
a2a1484ef9
Convert Consonant_Initial_Postfixed to CONS_FINAL
...
Consonant_Initial_Postfixed was split off of Consonant_Succeeding_Repha,
so it should correspond to the same USE class, CONS_FINAL.
2018-06-06 11:06:16 -07:00
Behdad Esfahbod
9d3cd13c30
[ucdn] Update to Unicode 11
...
https://github.com/grigorig/ucdn/issues/19
2018-06-05 17:59:41 -07:00
Behdad Esfahbod
060e6b4a13
Update to Unicode 11.0.0
...
UCDN is not updated yet.
2018-06-05 17:31:46 -07:00
Behdad Esfahbod
105a3b5e2d
Minor
2018-06-05 15:31:04 -07:00
Behdad Esfahbod
df01f3e560
1.7.7
2018-06-05 15:18:16 -07:00
Behdad Esfahbod
ba3b6d6c65
[khmer] Fix Coeng vs Halant confusion
...
Test suite results are unchanged (34).
2018-06-05 12:06:50 -07:00
Ebrahim Byagowi
8220ef8a54
Fix hb_face_count build issue
...
I should've rebased #1002 before the merge, my bad
2018-06-05 22:50:53 +04:30
Ebrahim Byagowi
32da0c6bc4
Add hb_face_count, a new API ( #1002 )
...
Simply, it returns the number of faces on a font blob.
To be used on hb-sanitizer tool but other clients also
can benefit from it.
2018-06-05 18:56:26 +04:30
Behdad Esfahbod
4a115fe7fe
[sinhala] Move reph to after post-consonants
...
Apparently this changed between Win 7 and Win 10.
Fixes https://github.com/harfbuzz/harfbuzz/issues/967
To be continued in https://github.com/harfbuzz/harfbuzz/issues/1044
2018-06-04 15:40:43 -07:00
Behdad Esfahbod
58400a2ad8
Remove DISALLOW_* from vector, set, and map
...
Some of the build bots, still fail on this. I suppose mine pass because
I enable C++11...
Anyway, remove these again.
2018-06-02 20:30:09 -07:00
Behdad Esfahbod
f9abbf83b6
Fix fallout from 975bdd5ef5
...
Ouch!
2018-06-02 15:46:08 -07:00
Behdad Esfahbod
f7515769fd
[vector] Use Crap pool in push() as well
2018-06-01 17:48:37 -07:00
Behdad Esfahbod
975bdd5ef5
[vector] Keep success status
2018-06-01 17:37:13 -07:00
Behdad Esfahbod
1ab3c3ed1b
[vector] Whitespace
2018-06-01 17:34:24 -07:00
Behdad Esfahbod
fb07d1a3ce
Another attempt at making every compiler happy...
...
Sigh.
2018-06-01 17:32:07 -07:00
Behdad Esfahbod
4f76f956bb
[map] Move prime_for to hb-static
2018-06-01 17:28:47 -07:00
Behdad Esfahbod
33d6f46bbb
[set] Shrink page-map size again
2018-06-01 17:25:35 -07:00
Behdad Esfahbod
4ca211bce1
Fix hb_vector_size_t
2018-06-01 17:19:05 -07:00
Behdad Esfahbod
a7dd90f519
Revert "Remove HB_DISALLOW_COPY_AND_ASSIGN"
...
This reverts commit ff92de766b
.
Revert that and remove ASSERT_POD. Let's see which bots are
unhappy with this configuration...
2018-06-01 16:10:45 -07:00
Behdad Esfahbod
7b50bf52f2
Use NullPool for _hb_set_nil and _hb_map_nil
2018-05-31 20:20:17 -07:00
Behdad Esfahbod
f040ca40ab
[set] Minor
2018-05-31 20:15:21 -07:00
Behdad Esfahbod
7185b273b3
Rename in_error to !successful
...
Towards possibly using Null pool for some nil objects.
2018-05-31 20:03:34 -07:00
Behdad Esfahbod
353f4d2efc
Fix a whitespace inconsistency
...
Null() and Crap() are only places that there's no space before '('...
2018-05-31 19:52:16 -07:00
Behdad Esfahbod
e36cd1dfd3
Remove trivial HB_ATOMIC_INT_INIT()
2018-05-31 19:31:39 -07:00
Behdad Esfahbod
550a70f801
Use 0 as inert object reference value instead of -1
...
Towards using Null object for nil objects.
2018-05-31 19:28:04 -07:00
Behdad Esfahbod
dcd1b07eea
Add const OffsetTo<> dereference
...
Unused, but now that we have CrapPool, implement it.
2018-05-31 17:58:40 -07:00
Ebrahim Byagowi
2baa357ac7
Fix symbol export issue of prime_mod on Alpine bot
...
Apparently our gcc-6.4.0 on Alpine Linux distribution doesn't like defining static const
inside a method, lets put that on outside the classes.
2018-05-31 12:27:31 +04:30
Behdad Esfahbod
54800f8322
[map] Mark prime_for HB_INTERNAL
...
Trying to see if it fixes gcc-4.2 bots.
2018-05-30 16:26:50 -07:00
Behdad Esfahbod
d600e844aa
Add CrapOrNull
2018-05-30 16:25:57 -07:00
Garret Rieger
251cc977e9
[subset] Switch to using hb_map_t inside of hb_subset_plan_t.
2018-05-30 17:23:59 -06:00
Behdad Esfahbod
b3d45de6cf
[map] Fix size calculation
...
Don't know why I thought I should subtract one there...
2018-05-30 14:02:49 -07:00
Behdad Esfahbod
ff92de766b
Remove HB_DISALLOW_COPY_AND_ASSIGN
...
llvm-gcc-4.2 bot had this problem:
hb-private.hh:812: error: initializer specified for non-virtual method 'void hb_vector_t<Type, StaticSize>::operator=(const hb_vector_t<Type, StaticSize>&) [with Type = hb_user_data_array_t::hb_user_data_item_t, unsigned int StaticSize = 1u]'
Removing the delete didn't work with a constructor. So, remove constructor.
Just disallow assignment. Still better than nothing.
2018-05-29 18:48:45 -07:00
Behdad Esfahbod
a244434622
[map] Fix resize
2018-05-29 18:32:57 -07:00
Behdad Esfahbod
efbab6ba3f
Disable use of thread_local
...
Clang build was failing with:
/usr/bin/ld: .libs/libharfbuzz_la-hb-blob.o: relocation R_X86_64_PC32 against undefined hidden symbol `_ZTH12_hb_CrapPool' can not be used when making a shared object
Instead of fighting it, just disable use of it.
2018-05-29 18:21:55 -07:00
Behdad Esfahbod
8c2c5d4508
[map] Not going to implement is_equal which is complicated
2018-05-29 18:15:52 -07:00
Behdad Esfahbod
ccd01c6555
[map] Move prime_mod to header to avoid linkage issues in subset.so
2018-05-29 18:13:13 -07:00
Behdad Esfahbod
6baebc5d55
[map] Fix copyright year
2018-05-29 17:58:46 -07:00
Behdad Esfahbod
b0158129d2
[map] Minor
2018-05-29 17:52:37 -07:00
Behdad Esfahbod
4099c66f70
[map] Don't return INVALID from get() just because in_error
2018-05-29 17:52:07 -07:00
Behdad Esfahbod
2578390773
[map] Fix bool use in C API
2018-05-29 17:34:35 -07:00
Behdad Esfahbod
a9fa39dca5
[map] More minor
2018-05-29 17:31:01 -07:00
Behdad Esfahbod
f76c4a7708
[map] Make initial resize actually work
2018-05-29 17:27:25 -07:00
Behdad Esfahbod
661e9ae4a5
[map] Add clear(), is_empty(), and get_population()
2018-05-29 17:09:17 -07:00
Behdad Esfahbod
b6959c33e2
[map] Minor
2018-05-29 17:02:22 -07:00
Behdad Esfahbod
686476a8ae
[map] Track population and occupancy separately
2018-05-29 17:00:02 -07:00
Behdad Esfahbod
8a978790cb
[map] Minor
2018-05-29 16:45:20 -07:00
Behdad Esfahbod
6f12ce47c0
Revert "[map] Return bool from set()"
...
This reverts commit face7cf55d
.
2018-05-29 16:45:06 -07:00
Behdad Esfahbod
fc51c45079
Revert "[map] Make hb_map_set() return bool"
...
This reverts commit 7bf1980146
.
2018-05-29 16:44:55 -07:00
Behdad Esfahbod
7bf1980146
[map] Make hb_map_set() return bool
2018-05-29 16:42:55 -07:00
Behdad Esfahbod
face7cf55d
[map] Return bool from set()
2018-05-29 16:39:03 -07:00
Behdad Esfahbod
e94be200bd
[map] Implement operator[] for get()ting
2018-05-29 16:37:44 -07:00
Behdad Esfahbod
743fdd9c61
[map] First try at implementing an integer-to-integer hashmap
...
Fully untested.
2018-05-29 16:29:12 -07:00
Ebrahim Byagowi
65c82179c9
[blob] Use MAP_NORESERVE if available ( #1039 )
...
MAP_NORESERVE is not available on macOS for example so set the flag
to zero if not defined on the headers.
2018-05-26 23:50:10 +04:30
Behdad Esfahbod
1ce40d900a
[set] Remove stale comment
2018-05-25 16:34:08 -07:00
Behdad Esfahbod
6c2227640b
Add HB_DISALLOW_COPY_AND_ASSIGN
2018-05-25 16:21:27 -07:00
Behdad Esfahbod
fd3d004231
Move pool definitions to hb-static.cc
2018-05-24 15:58:26 -07:00
Behdad Esfahbod
7f7b1370d3
Fix Uniscribe build
...
If a pointer type was passed to Null(), reinterpret_cast<> was
complaining about qualifiers being removed. Turns out I need the const on
the other side of "Type" to fix that. Also remove unused const from
NullPool type.
2018-05-24 14:09:04 -07:00
Behdad Esfahbod
31c4236d96
Underflow protection in hb_vector_t
2018-05-24 13:53:02 -07:00
Behdad Esfahbod
f83e992c8b
Mark CrapPool thread_local
...
Not sure if I like to keep it. For now, aim for correctness.
2018-05-24 13:53:02 -07:00
Behdad Esfahbod
5d80129891
Add CrapPool
...
Common Regoin for Access Protection. Like the NullPool, but writable.
2018-05-24 13:53:02 -07:00
Behdad Esfahbod
673b764de0
Move code around
2018-05-24 13:53:02 -07:00
Behdad Esfahbod
65aeabd622
Add hb_vector_t::push(const Type &v)
...
Makes for cleaner code.
2018-05-24 13:53:02 -07:00
Behdad Esfahbod
6c818c5516
Actually enable vectorized operations
...
Fixup for previous commit. Was accidentally turned off.
2018-05-22 22:00:05 -07:00
Behdad Esfahbod
f56a250b04
Another try at smart vectorization
...
Make clang happy. Also, don't use anonymous union.
2018-05-22 21:36:07 -07:00
Behdad Esfahbod
b995b501ef
Try enabling vectorization smartly
...
We'll see if this sticks to the bots.
2018-05-22 21:06:22 -07:00
Behdad Esfahbod
dd22c29f95
[set] Always check population before checking for equality
2018-05-22 20:57:19 -07:00
Ebrahim Byagowi
8eb53b853d
Minor, make CreateFile compatible with the disabled writable flag
...
"writable" is not in use and probably we can go in the reverse direction
and remove the flags that are useful for enabled writable, this is just
for the sake of completeness however.
2018-05-11 22:44:44 +04:30
Ebrahim Byagowi
33eb1bd23b
Remove unnecessary headers and definitions of hb-blob ( #1028 )
...
It removes io.h and other polyfills which we no longer need as 7e76d74
2018-05-11 14:36:41 +04:30
Ebrahim Byagowi
7e76d746e2
Make hb_blob_create_from_file more portable ( #1027 )
...
This makes it compatible with ARMCC which I had access in
a collaboration with @imgtec, thanks!
Basically hb_blob_create_from_file features three code paths,
mmap, Win32 and fallback.
We had fallback implementation even before this but it was relied
to "open" which is not available on some environments. This change
improved the situtation by using only fopen and friends for
fallback path.
Interestingly we could use "open" on Windows but in fact it was
emulated by MSVCRT so I've completely split that from Unix path
now that we have a distinct path for fallback path also.
2018-05-11 13:40:33 +04:30
Behdad Esfahbod
e99d75ea9c
Fix warning
2018-05-09 15:31:57 -07:00
Behdad Esfahbod
191c4edc54
Reinstante DEFINE_NULL_DATA
...
Seems like I messed up; buffer overrun got reported.
2018-05-09 15:31:57 -07:00
Ebrahim Byagowi
93bdf9b2df
Use arrayZ on hb-coretext and hb-uniscribe and fix macOS/Win bots ( #1024 )
...
Following to 63f57f4
2018-05-09 23:24:17 +04:30
Behdad Esfahbod
63f57f4dab
Mark more unsized array's as arrayZ
2018-05-08 16:56:11 -07:00
Behdad Esfahbod
091c17df5a
Use UnsizedArrayOf<> in one place where [VAR] was used
...
Trying to see how many can converted meaningfully.
2018-05-08 16:42:45 -07:00
Behdad Esfahbod
0644d92ef3
Merge pull request #1018 from googlefonts/cmap4
...
[subset] Add cmap format 4 subsetting.
2018-05-08 15:21:09 -07:00
Behdad Esfahbod
2a2e28e701
Don't keep instance in hb_table_lazy_loader_t
2018-05-08 03:00:21 -07:00
Behdad Esfahbod
57bac8f699
Rename
2018-05-08 02:55:20 -07:00
Behdad Esfahbod
2a46a020fd
Minor
2018-05-08 02:53:03 -07:00
Behdad Esfahbod
eba1c16a60
Always lock blob in sanitize. Remove blob->lock_as() in favor of blob->lock()
2018-05-08 02:47:42 -07:00
Behdad Esfahbod
b4fa505014
Move Sanitizer::lock_instance<>() to blob->lock_as<>().
2018-05-08 02:45:08 -07:00
Behdad Esfahbod
abc12f7b81
Move null pool to hb-private
2018-05-08 02:23:36 -07:00
Behdad Esfahbod
08e280fd84
Rename hb_string_t to hb_bytes_t
2018-05-08 01:57:27 -07:00
Behdad Esfahbod
bd021a6720
Minor
2018-05-08 01:50:30 -07:00
Behdad Esfahbod
16e4ccf7b4
Allocate user-data-array on the heap
...
This saves each object allocation 72 bytes. Now object overhead is just
16 bytes (on x86) instead of 88 bytes. Neat.
2018-05-08 01:47:05 -07:00
Behdad Esfahbod
61920b21ca
Oops
...
Fixes https://github.com/harfbuzz/harfbuzz/issues/1023
2018-05-08 01:28:49 -07:00
Behdad Esfahbod
f673cfbd64
Support scripts that are written both LTR and RTL
...
Right now only Old Italic is marked as such.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1000
2018-05-07 14:12:17 -07:00
Behdad Esfahbod
90869e6962
[ot] Apply langsys's required feature even if no other feature exists
2018-05-07 14:12:17 -07:00
Behdad Esfahbod
90baf72197
Move some blob functions to methods
2018-05-07 13:38:19 -07:00
Behdad Esfahbod
5c64d61475
Add hb-blob-private.hh
...
Towards making blob more memory-allocation-friendly
2018-05-07 13:38:19 -07:00
Behdad Esfahbod
203dc44ebc
[ot-layout] Remove unused members
...
We should hang those off somewhere else. For now, the unused ones can go.
2018-05-07 13:38:19 -07:00
Garret Rieger
3be050f075
[subset] entrySelectorZ -> entrySelector.
2018-05-04 11:23:32 -07:00
Garret Rieger
7c22f98da7
[subset] add missing template parameter.
2018-05-04 11:20:03 -07:00
Garret Rieger
95eb0f3baf
[subset] Switch to a non-log using implementation of caculating searchRangeZ, entrySelectorZ, and rangeShiftZ in cmap4.
2018-05-04 11:20:03 -07:00
Garret Rieger
c817992f49
[subset] Write out a format 4, plat 0 encoding record to match fontTools.
2018-05-04 11:20:03 -07:00
Garret Rieger
9ef55a4c13
[subset] A few bug fixes for cmap format 4 subsetting.
2018-05-04 11:20:03 -07:00
Garret Rieger
81ea75f5c8
[subset] Complete implementation of cmap4 subsetting.
2018-05-04 11:20:03 -07:00
Garret Rieger
4195a52b04
[subset] WIP implementation of serialize for cmap format 4.
2018-05-04 11:20:03 -07:00
Garret Rieger
cfa592d31c
[subset] Add an implement for cmap format 4 create_sub_table_plan.
2018-05-04 11:20:03 -07:00
Garret Rieger
295d67ea7d
[subset] WIP cmap format 4 subsetting.
2018-05-04 11:20:03 -07:00
Garret Rieger
0053d13283
[subset] Refactor cmap subsetting to make it possible to add support for more sub tables.
2018-05-04 11:20:03 -07:00
Garret Rieger
03b2754812
[subset] Add const to the hb_subset_plan_t input to a couple functions in hb-subset-plan.
2018-05-04 11:18:25 -07:00
Behdad Esfahbod
5b93f69169
Rename some X-terminated members to Z-terminated
...
X-terminated means don't access this, it's not located correctly.
Z-terminated means this is a C array with no bound checking.
2018-05-02 14:59:14 -04:00
Behdad Esfahbod
f1f6bc0a6f
[set] Fix init/fini of set on the stack to call object init/fini
...
Part of https://github.com/harfbuzz/harfbuzz/issues/1017
2018-05-02 12:56:45 -04:00
Behdad Esfahbod
37b95612d4
Remove hb_auto_array_t
...
Part of https://github.com/harfbuzz/harfbuzz/issues/1017
2018-05-01 19:09:00 -04:00
Behdad Esfahbod
5c3112aec8
s/hb_prealloced_array_t/hb_vector_t/g
...
Part of https://github.com/harfbuzz/harfbuzz/issues/1017
2018-05-01 19:07:04 -04:00
Behdad Esfahbod
4a01eb1234
Add hb_auto_t
...
Part of https://github.com/harfbuzz/harfbuzz/issues/1017
2018-05-01 19:05:58 -04:00