Module: wine Branch: master Commit: 3c0836bfa3360b8696d08c0c08ed37ab3368bf5c URL: https://source.winehq.org/git/wine.git/?a=commit;h=3c0836bfa3360b8696d08c0c0...
Author: Nikolay Sivov nsivov@codeweavers.com Date: Fri Jan 22 15:25:18 2021 +0300
dwrite: Mark features that were not found.
Signed-off-by: Nikolay Sivov nsivov@codeweavers.com Signed-off-by: Alexandre Julliard julliard@winehq.org
---
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)