Nikolay Sivov : dwrite: Fix array indexing when merging features.

Alexandre Julliard julliard at winehq.org
Mon May 25 15:44:23 CDT 2020


Module: wine
Branch: master
Commit: 4490f8a2745ecf7d78425090b889a6af00e7e1a2
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=4490f8a2745ecf7d78425090b889a6af00e7e1a2

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Mon May 25 14:54:27 2020 +0300

dwrite: Fix array indexing when merging features.

Signed-off-by: Nikolay Sivov <nsivov at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/dwrite/shape.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/dlls/dwrite/shape.c b/dlls/dwrite/shape.c
index 3d25898cf7..77c5ba1f8a 100644
--- a/dlls/dwrite/shape.c
+++ b/dlls/dwrite/shape.c
@@ -231,7 +231,7 @@ static int features_sorting_compare(const void *a, const void *b)
 static void shape_merge_features(struct scriptshaping_context *context, struct shaping_features *features)
 {
     const DWRITE_TYPOGRAPHIC_FEATURES **user_features = context->user_features.features;
-    unsigned int j = 0, i;
+    unsigned int i, j;
 
     /* For now only consider global, enabled user features. */
     if (user_features && context->user_features.range_lengths)
@@ -250,7 +250,7 @@ static void shape_merge_features(struct scriptshaping_context *context, struct s
     /* Sort and merge duplicates. */
     qsort(features->features, features->count, sizeof(*features->features), features_sorting_compare);
 
-    for (i = 1; i < features->count; ++i)
+    for (i = 1, j = 0; i < features->count; ++i)
     {
         if (features->features[i].tag != features->features[j].tag)
             features->features[++j] = features->features[i];




More information about the wine-cvs mailing list