diff --git a/src/hb-aat-layout-feat-table.hh b/src/hb-aat-layout-feat-table.hh index 14f91bf9a..ec617080d 100644 --- a/src/hb-aat-layout-feat-table.hh +++ b/src/hb-aat-layout-feat-table.hh @@ -130,7 +130,7 @@ struct FeatureName hb_ot_name_id_t get_feature_name_id () const { return nameIndex; } /* A FeatureName with no settings is meaningless */ - bool has_data () const { return nSettings > 0; } + bool has_data () const { return nSettings; } bool sanitize (hb_sanitize_context_t *c, const void *base) const { diff --git a/src/hb-aat-map.cc b/src/hb-aat-map.cc index fc1dcbd2d..9b5d97c74 100644 --- a/src/hb-aat-map.cc +++ b/src/hb-aat-map.cc @@ -36,16 +36,14 @@ #include "hb-aat-layout-feat-table.hh" -void hb_aat_map_builder_t::add_feature (hb_tag_t tag, - unsigned int value) +void hb_aat_map_builder_t::add_feature (hb_tag_t tag, unsigned value) { - hb_blob_t *feat_blob = face->table.feat.get_blob (); - const AAT::feat& feat = *feat_blob->as (); - if (!feat.has_data ()) return; + if (!face->table.feat->has_data ()) return; if (tag == HB_TAG ('a','a','l','t')) { - if (!feat.exposes_feature (HB_AAT_LAYOUT_FEATURE_TYPE_CHARACTER_ALTERNATIVES)) return; + if (!face->table.feat->exposes_feature (HB_AAT_LAYOUT_FEATURE_TYPE_CHARACTER_ALTERNATIVES)) + return; feature_info_t *info = features.push(); info->type = HB_AAT_LAYOUT_FEATURE_TYPE_CHARACTER_ALTERNATIVES; info->setting = (hb_aat_layout_feature_selector_t) value; @@ -54,7 +52,7 @@ void hb_aat_map_builder_t::add_feature (hb_tag_t tag, const hb_aat_feature_mapping_t *mapping = hb_aat_layout_find_feature_mapping (tag); if (!mapping) return; - if (!feat.exposes_feature (mapping->aatFeatureType)) return; + if (!face->table.feat->exposes_feature (mapping->aatFeatureType)) return; feature_info_t *info = features.push(); info->type = mapping->aatFeatureType; diff --git a/test/shaping/data/in-house/tests/macos.tests b/test/shaping/data/in-house/tests/macos.tests index 7fc6309b8..f4ed910d6 100644 --- a/test/shaping/data/in-house/tests/macos.tests +++ b/test/shaping/data/in-house/tests/macos.tests @@ -18,6 +18,10 @@ /Library/Fonts/Zapfino.ttf@9ee799ffb09516ead6b0cf6f2ca807276e150748:--font-funcs ot:U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+006F:[Z=0+416|a=1@-21,0+264|p_f=2+433|i=4+181|n=5+261|Z=6+416|a=7@-21,0+264|p_f=8+433|i=10+181|n=11+261|Z=12+416|a=13@-21,0+264|p_f=14+433|i=16+181|n=17+261|Z=18+416|a=19@-21,0+264|p_f=20+433|i=22+181|n=23+261|Z=24+416|a=25@-21,0+264|p_f=26+433|i=28+181|n=29+261|Z=30+416|a=31@-21,0+264|p_f=32+433|i=34+181|n=35+261|Z=36+416|a=37@-21,0+264|p_f=38+433|i=40+181|n=41+261|Z=42+416|a=43@-21,0+264|p_f=44+433|i=46+181|n=47+261|Z=48+416|a=49@-21,0+264|p_f=50+433|i=52+181|n=53+261|Z=54+416|a=55@-21,0+264|p_f=56+433|i=58+181|n=59+261|Z=60+416|a=61@-21,0+264|p_f=62+433|i=64+181|n=65+261|Z_a_p_f_i_n_o=66+2333] # https://github.com/harfbuzz/harfbuzz/pull/2130 /System/Library/Fonts/ヒラギノ明朝 ProN W3.ttc@e3bd65c7209ceab2c70ef22d3ebe0967ab319ed3:--font-funcs ot --direction=ttb:U+005B,U+0048,U+0065,U+006C,U+006C,U+006F,U+0034,U+005D:[gid60=0@-157,-880+0,-1000|gid41=1@-398,-880+0,-1000|gid70=2@-267,-880+0,-1000|gid77=3@-148,-880+0,-1000|gid77=4@-148,-880+0,-1000|gid80=5@-291,-880+0,-1000|gid21=6@-294,-880+0,-1000|gid62=7@-157,-880+0,-1000] +/System/Library/Fonts/Times.dfont@39c954614d3f3317b28564db06d5b7b7a6ff0e39:--font-funcs ot:U+0066,U+0069,U+006e,U+0065:[fi=0+1139|n=2+1024|e=3+909] +/System/Library/Fonts/Times.dfont@39c954614d3f3317b28564db06d5b7b7a6ff0e39:--font-funcs ot --features liga=0:U+0066,U+0069,U+006e,U+0065:[f=0+682|i=1+569|n=2+1024|e=3+909] +/Library/Fonts/Kokonor.ttf@fe9d518bb4e20e77f7a0444c82f4d41467dd714d:--font-funcs ot:U+0F62,U+0F92,U+0FB1,U+0F74:[r_g_y_u=0+1579] +/Library/Fonts/Kokonor.ttf@fe9d518bb4e20e77f7a0444c82f4d41467dd714d:--font-funcs ot --features liga=0:U+0F62,U+0F92,U+0FB1,U+0F74:[r_g_y_u=0+1579] # 10.13.6 https://gist.github.com/ebraminio/d432e831b3f7ebe30245dde5775e1c7e /System/Library/Fonts/Helvetica.ttc@8a928f9866299d2455f41360202b7a3b48503a5e:--font-funcs ot:U+006D,U+0300:[m=0+1706|gravecmb=0@-284,10+0] @@ -38,6 +42,10 @@ /System/Library/Fonts/Apple Color Emoji.ttc@2e09b1f3d42c3821cc6c4ac5b6ce16237ab0d496:--remove-default-ignorables --font-funcs ot:U+1F468,U+200D,U+1F469,U+200D,U+1F467,U+200D,U+1F466:[u1F46A.MWGB=0+800] /Library/Fonts/Zapfino.ttf@99a1e15163c3e9567d5b1019c45e9254dae63b08:--font-funcs ot:U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+006F:[Z=0+416|a=1@-21,0+264|p_f=2+433|i=4+181|n=5+261|Z=6+416|a=7@-21,0+264|p_f=8+433|i=10+181|n=11+261|Z=12+416|a=13@-21,0+264|p_f=14+433|i=16+181|n=17+261|Z=18+416|a=19@-21,0+264|p_f=20+433|i=22+181|n=23+261|Z=24+416|a=25@-21,0+264|p_f=26+433|i=28+181|n=29+261|Z=30+416|a=31@-21,0+264|p_f=32+433|i=34+181|n=35+261|Z=36+416|a=37@-21,0+264|p_f=38+433|i=40+181|n=41+261|Z=42+416|a=43@-21,0+264|p_f=44+433|i=46+181|n=47+261|Z=48+416|a=49@-21,0+264|p_f=50+433|i=52+181|n=53+261|Z=54+416|a=55@-21,0+264|p_f=56+433|i=58+181|n=59+261|Z=60+416|a=61@-21,0+264|p_f=62+433|i=64+181|n=65+261|Z_a_p_f_i_n_o=66+2333] /System/Library/Fonts/Thonburi.ttc@bb080e01e45f7f6699d2df09a03b3b6d13804897:--font-funcs ot:U+0E17,U+0E35,U+0E48,U+0E4A:[thothahanthai_saraiithai_maiekthai=0+1616|maitrithai.key=0+1300] +/System/Library/Fonts/Times.ttc@896098b6979306ad84355025459f7c68b029139c:--font-funcs ot:U+0066,U+0069,U+006e,U+0065:[fi=0+1139|n=2+1024|e=3+909] +/System/Library/Fonts/Times.ttc@896098b6979306ad84355025459f7c68b029139c:--font-funcs ot --features liga=0:U+0066,U+0069,U+006e,U+0065:[f=0+682|i=1+569|n=2+1024|e=3+909] +/Library/Fonts/Kokonor.ttf@14a5c850ba917d9ec9f6bb9b1fc59b1d95512da4:--font-funcs ot:U+0F62,U+0F92,U+0FB1,U+0F74:[r_g_y_u=0+1579] +/Library/Fonts/Kokonor.ttf@14a5c850ba917d9ec9f6bb9b1fc59b1d95512da4:--font-funcs ot --features liga=0:U+0F62,U+0F92,U+0FB1,U+0F74:[r_g_y_u=0+1579] # 10.14.2 https://gist.github.com/ebraminio/4b731a82f11a662b2164622ebb93086a /System/Library/Fonts/Helvetica.ttc@992d29a0fa4ed91773457c29b661e94843619cde:--font-funcs ot:U+006D,U+0300:[m=0+1706|gravecmb=0@-284,10+0] @@ -58,6 +66,10 @@ /System/Library/Fonts/Apple Color Emoji.ttc@60f77161021b1b87e99c3690e1a9b56341cf8792:--remove-default-ignorables --font-funcs ot:U+1F468,U+200D,U+1F469,U+200D,U+1F467,U+200D,U+1F466:[u1F46A.MWGB=0+800] /Library/Fonts/Zapfino.ttf@99a1e15163c3e9567d5b1019c45e9254dae63b08:--font-funcs ot:U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+006F:[Z=0+416|a=1@-21,0+264|p_f=2+433|i=4+181|n=5+261|Z=6+416|a=7@-21,0+264|p_f=8+433|i=10+181|n=11+261|Z=12+416|a=13@-21,0+264|p_f=14+433|i=16+181|n=17+261|Z=18+416|a=19@-21,0+264|p_f=20+433|i=22+181|n=23+261|Z=24+416|a=25@-21,0+264|p_f=26+433|i=28+181|n=29+261|Z=30+416|a=31@-21,0+264|p_f=32+433|i=34+181|n=35+261|Z=36+416|a=37@-21,0+264|p_f=38+433|i=40+181|n=41+261|Z=42+416|a=43@-21,0+264|p_f=44+433|i=46+181|n=47+261|Z=48+416|a=49@-21,0+264|p_f=50+433|i=52+181|n=53+261|Z=54+416|a=55@-21,0+264|p_f=56+433|i=58+181|n=59+261|Z=60+416|a=61@-21,0+264|p_f=62+433|i=64+181|n=65+261|Z_a_p_f_i_n_o=66+2333] /System/Library/Fonts/Thonburi.ttc@bb080e01e45f7f6699d2df09a03b3b6d13804897:--font-funcs ot:U+0E17,U+0E35,U+0E48,U+0E4A:[thothahanthai_saraiithai_maiekthai=0+1616|maitrithai.key=0+1300] +/System/Library/Fonts/Times.ttc@ebb050e4fcaaebe9992efbc7b5660b60ba18b518:--font-funcs ot:U+0066,U+0069,U+006e,U+0065:[fi=0+1139|n=2+1024|e=3+909] +/System/Library/Fonts/Times.ttc@ebb050e4fcaaebe9992efbc7b5660b60ba18b518:--font-funcs ot --features liga=0:U+0066,U+0069,U+006e,U+0065:[f=0+682|i=1+569|n=2+1024|e=3+909] +/Library/Fonts/Kokonor.ttf@14a5c850ba917d9ec9f6bb9b1fc59b1d95512da4:--font-funcs ot:U+0F62,U+0F92,U+0FB1,U+0F74:[r_g_y_u=0+1579] +/Library/Fonts/Kokonor.ttf@14a5c850ba917d9ec9f6bb9b1fc59b1d95512da4:--font-funcs ot --features liga=0:U+0F62,U+0F92,U+0FB1,U+0F74:[r_g_y_u=0+1579] # 10.15 https://gist.github.com/ebraminio/d52dd780fec59f8e2dfffe8e1a841823 /System/Library/Fonts/Helvetica.ttc@98c12f0d63168b20635fb51d638929753b4e6aed:--font-funcs ot:U+006D,U+0300:[m=0+1706|gravecmb=0@-284,10+0] @@ -79,8 +91,6 @@ /System/Library/Fonts/Apple Color Emoji.ttc@ef22d55c551e2af0193d75105346c6e7e21af389:--remove-default-ignorables --font-funcs ot:U+1F468,U+200D,U+1F469,U+200D,U+1F467,U+200D,U+1F466:[u1F46A.MWGB=0+800] /System/Library/Fonts/Supplemental/Zapfino.ttf@99a1e15163c3e9567d5b1019c45e9254dae63b08:--font-funcs ot:U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+005A,U+0061,U+0070,U+0066,U+0069,U+006E,U+006F:[Z=0+416|a=1@-21,0+264|p_f=2+433|i=4+181|n=5+261|Z=6+416|a=7@-21,0+264|p_f=8+433|i=10+181|n=11+261|Z=12+416|a=13@-21,0+264|p_f=14+433|i=16+181|n=17+261|Z=18+416|a=19@-21,0+264|p_f=20+433|i=22+181|n=23+261|Z=24+416|a=25@-21,0+264|p_f=26+433|i=28+181|n=29+261|Z=30+416|a=31@-21,0+264|p_f=32+433|i=34+181|n=35+261|Z=36+416|a=37@-21,0+264|p_f=38+433|i=40+181|n=41+261|Z=42+416|a=43@-21,0+264|p_f=44+433|i=46+181|n=47+261|Z=48+416|a=49@-21,0+264|p_f=50+433|i=52+181|n=53+261|Z=54+416|a=55@-21,0+264|p_f=56+433|i=58+181|n=59+261|Z=60+416|a=61@-21,0+264|p_f=62+433|i=64+181|n=65+261|Z_a_p_f_i_n_o=66+2333] /System/Library/Fonts/Thonburi.ttc@bb080e01e45f7f6699d2df09a03b3b6d13804897:--font-funcs ot:U+0E17,U+0E35,U+0E48,U+0E4A:[thothahanthai_saraiithai_maiekthai=0+1616|maitrithai.key=0+1300] - -# 10.15.4 Beta (19E224g) /System/Library/Fonts/Times.ttc@e9b4f626133de3b22787ee025218c6c799cc3ceb:--font-funcs ot:U+0066,U+0069,U+006e,U+0065:[fi=0+1139|n=2+1024|e=3+909] /System/Library/Fonts/Times.ttc@e9b4f626133de3b22787ee025218c6c799cc3ceb:--font-funcs ot --features liga=0:U+0066,U+0069,U+006e,U+0065:[f=0+682|i=1+569|n=2+1024|e=3+909] /System/Library/Fonts/Supplemental/Kokonor.ttf@14a5c850ba917d9ec9f6bb9b1fc59b1d95512da4:--font-funcs ot:U+0F62,U+0F92,U+0FB1,U+0F74:[r_g_y_u=0+1579]