Signed-off-by: Nikolay Sivov nsivov@codeweavers.com --- dlls/dwrite/dwrite_private.h | 1 + dlls/dwrite/opentype.c | 2 ++ 2 files changed, 3 insertions(+)
diff --git a/dlls/dwrite/dwrite_private.h b/dlls/dwrite/dwrite_private.h index 4a4229e1dc0..57641680db5 100644 --- a/dlls/dwrite/dwrite_private.h +++ b/dlls/dwrite/dwrite_private.h @@ -544,6 +544,7 @@ enum shaping_feature_flags FEATURE_MANUAL_ZWJ = 0x8, FEATURE_MANUAL_JOINERS = FEATURE_MANUAL_ZWNJ | FEATURE_MANUAL_ZWJ, FEATURE_HAS_FALLBACK = 0x10, + FEATURE_NEEDS_FALLBACK = 0x20, };
struct shaping_feature diff --git a/dlls/dwrite/opentype.c b/dlls/dwrite/opentype.c index 256218663fb..03b74eae591 100644 --- a/dlls/dwrite/opentype.c +++ b/dlls/dwrite/opentype.c @@ -4568,6 +4568,8 @@ static void opentype_layout_collect_lookups(struct scriptshaping_context *contex next_bit += bits_needed; context->global_mask |= (feature->default_value << feature->shift) & feature->mask; } + if (!found) + feature->flags |= FEATURE_NEEDS_FALLBACK; }
for (stage = 0; stage <= features->stage; ++stage)