Garret Rieger
ccc59dc612
[subset] Add unit test for glyf subsetting and retain gids.
2019-01-29 13:19:21 -08:00
Garret Rieger
96b038f375
[subset] fix failure to init instruction ranges values for an invalid glyph.
2019-01-29 13:19:21 -08:00
Garret Rieger
4b1ac3a2fa
[subset] Do some refactoring in hb-subset-glyf.cc.
...
- Extract code out into helper methods in several places.
- Bundle loca address, size and is short into a struct.
2019-01-29 13:19:21 -08:00
Garret Rieger
b7f971884e
Add retain_gids option to subset input. Update glyf and loca handling to respect retain_gids.
2019-01-29 13:19:21 -08:00
Behdad Esfahbod
e75b22039f
Move hb_addressof() to hb-meta.hh
2019-01-28 21:26:23 -05:00
Behdad Esfahbod
6cf25c2971
Merge branch 'master' into iter
2019-01-28 21:23:28 -05:00
Behdad Esfahbod
71157a4520
[meta] Remove _ft struct names
...
Using decltype() instead.
2019-01-28 21:20:12 -05:00
Behdad Esfahbod
9103bd056f
[pair] Use decltype
2019-01-28 21:16:51 -05:00
Behdad Esfahbod
fe53292310
[CI] Peg CircleCI badge link to master branch
...
[skip ci]
2019-01-28 20:47:58 -05:00
Behdad Esfahbod
9569819e24
[ci] Peg build status badges to master branch
...
[skip ci]
2019-01-28 20:43:43 -05:00
Behdad Esfahbod
1e29906a77
Switch README / README.md
...
[skip ci]
2019-01-28 20:39:16 -05:00
Behdad Esfahbod
a30e13469e
[iter] Add operator << to set / vector
2019-01-28 16:39:01 -05:00
Behdad Esfahbod
d438e61042
[iter] Fix operator() impls
2019-01-28 16:34:04 -05:00
Behdad Esfahbod
57795bc8dd
[iter] Add operator>> and operator<<
2019-01-28 16:23:12 -05:00
Behdad Esfahbod
8bd96be994
[iter] Use auto c = C.iter() internally
2019-01-28 16:17:36 -05:00
Behdad Esfahbod
073fa4ac5a
Merge branch 'master' into iter
2019-01-28 14:35:41 -05:00
Behdad Esfahbod
9a1df82e3f
[uniscribe] Whitelist function type cast
2019-01-28 14:15:18 -05:00
Behdad Esfahbod
6e1c3eaf70
Fix sign comparison error
2019-01-28 14:12:41 -05:00
Behdad Esfahbod
9db7a7da63
Fix warning
...
c:\projects\harfbuzz\src\hb-ot-color-cbdt-table.hh(59): warning C4146: unary minus operator applied to unsigned type, result still unsigned [C:\projects\harfbuzz\build\harfbuzz.vcxproj]
2019-01-28 14:09:59 -05:00
Behdad Esfahbod
51b584880e
[pragma] Silence MSVC unknown-pragma warning
2019-01-28 14:09:45 -05:00
Behdad Esfahbod
d592bd16cd
Try fixing MSVC build
2019-01-28 13:41:40 -05:00
Behdad Esfahbod
0363ce650b
[iter] Accept C arrays in hb_iter()
2019-01-27 01:06:32 +01:00
Behdad Esfahbod
b62e7f9223
[test] Test unary operator+
...
"Test" as in compiles..
2019-01-27 00:51:57 +01:00
Behdad Esfahbod
778c96b8d7
[iter] Fix hb_iter()
2019-01-27 00:50:54 +01:00
Behdad Esfahbod
2f5b1a9104
[iter] Add unary operator+ that returns a copy
2019-01-27 00:49:37 +01:00
Behdad Esfahbod
fbab07f9b3
[iter] Add hb_bool() and make hb_filter default to it for predicate
2019-01-27 00:44:45 +01:00
Behdad Esfahbod
313d63e240
[meta] Back to using _ft suffix for function-object types
...
Seprate namespace, cleaner, more clear.
2019-01-26 22:58:26 +01:00
Behdad Esfahbod
2aff6d9625
[iter] Test that default-constructed iterators are empty
2019-01-26 22:54:25 +01:00
Behdad Esfahbod
f35e7eabf1
pragma GCC diagnostic error "-Winjected-class-name"
...
See 6b6783e158
2019-01-26 22:50:00 +01:00
Behdad Esfahbod
509353357c
[iter] Use hb_declval() instead of Null() to get instance
...
I had used Null to make one of the bots happy before. Not going
to bend to such demands anymore..
2019-01-26 22:47:35 +01:00
Behdad Esfahbod
6b6783e158
[iter/meta] Fix build on newer clang
...
The mystery failure had to do with SFINAE failure because the template
function involved was accessing ::iter_t of a type that was also named iter_t.
In this context, apparently:
warning: ISO C++ specifies that qualified reference to 'iter_t' is a
constructor name rather than a type in this context, despite preceding 'typename' keyword
[-Winjected-class-name]
We use a new macro, also called hb_iter_t(), to get iterator type of
a type. This uses declval/hb_decltype, and has the added benefit
that it returns correct type for const vs non-const objects, if they
have different iterators.
2019-01-26 22:44:09 +01:00
Behdad Esfahbod
5adb113baf
[meta] Mark function-objects as const
2019-01-26 22:15:59 +01:00
Behdad Esfahbod
ac90f17c55
Merge branch 'master' into iter
2019-01-26 14:05:39 +01:00
Behdad Esfahbod
60022ecced
Fix -Wcast-function-type warnings in util/ with gcc 4.8
2019-01-26 14:04:51 +01:00
Behdad Esfahbod
a9321cb5f8
Fix mac test
2019-01-25 16:11:45 +01:00
Behdad Esfahbod
f398097529
More static constexpr
2019-01-25 16:08:25 +01:00
Behdad Esfahbod
090fe56dc6
Merge branch 'master' into iter
2019-01-25 16:06:52 +01:00
Behdad Esfahbod
06358ae974
[AAT] Add test for recent Ligature stack fix, using Zapfino on Mac
2019-01-25 15:11:47 +01:00
Behdad Esfahbod
e970de48bc
[AAT] Minor sign
2019-01-24 18:16:17 +01:00
Behdad Esfahbod
a371a28cda
[AAT] Use a ring buffer for ligature stack
...
I think Apple does very similarly, but probably with a stack size of 16.
We do it with a stack size that is currently set to 64.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1531
2019-01-24 18:12:25 +01:00
Behdad Esfahbod
7886b1578f
Whitespace
2019-01-24 18:06:17 +01:00
Behdad Esfahbod
b976940243
[AAT] Handle transition errors during machine operation
...
Before we used to give up. Now, just ignore error and continue processing.
Fixes https://github.com/harfbuzz/harfbuzz/issues/1531
2019-01-24 18:01:07 +01:00
Behdad Esfahbod
e234bb6a42
[AAT] Ignore machine errors and continue
2019-01-24 17:23:11 +01:00
Behdad Esfahbod
1ec90514f6
[AAT] Minor
2019-01-24 17:21:41 +01:00
Behdad Esfahbod
299eca0c3b
[AAT] Handle out-of-bounds classes
2019-01-24 17:17:00 +01:00
Behdad Esfahbod
c4623db4a3
[AAT] Minor
2019-01-24 17:10:12 +01:00
Behdad Esfahbod
c4e36f97b6
[AAT] Minor
2019-01-24 17:06:16 +01:00
Behdad Esfahbod
f60282c5bf
More pragma control
...
Fixes https://bugs.chromium.org/p/chromium/issues/detail?id=924848
2019-01-24 16:29:09 +01:00
Behdad Esfahbod
fd0889f903
Comment
2019-01-24 16:12:52 +01:00
Behdad Esfahbod
00f06d1aa6
Fix test
2019-01-24 16:11:05 +01:00