[PATCH 2/7] dwrite: Mark features that were not found.
Nikolay Sivov
nsivov at codeweavers.com
Fri Jan 22 06:25:18 CST 2021
Signed-off-by: Nikolay Sivov <nsivov at 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)
--
2.29.2
More information about the wine-devel
mailing list