[PATCH] dwrite: pass in the size of digits to avoid using sizeof(pointer) (Coverity)

Marcus Meissner marcus at jet.franken.de
Sun May 14 05:23:39 CDT 2017


CID 1408590

Signed-off-by: Marcus Meissner <marcus at jet.franken.de>
---
 dlls/dwrite/analyzer.c | 8 ++++----
 1 file changed, 4 insertions(+), 4 deletions(-)

diff --git a/dlls/dwrite/analyzer.c b/dlls/dwrite/analyzer.c
index 5ae16a1aae..e095385d31 100644
--- a/dlls/dwrite/analyzer.c
+++ b/dlls/dwrite/analyzer.c
@@ -1024,7 +1024,7 @@ static UINT32 get_opentype_language(const WCHAR *locale)
     return language;
 }
 
-static DWRITE_NUMBER_SUBSTITUTION_METHOD get_number_substitutes(IDWriteNumberSubstitution *substitution, WCHAR *digits)
+static DWRITE_NUMBER_SUBSTITUTION_METHOD get_number_substitutes(IDWriteNumberSubstitution *substitution, WCHAR *digits, int digitslen)
 {
     struct dwrite_numbersubstitution *numbersubst = unsafe_impl_from_IDWriteNumberSubstitution(substitution);
     DWRITE_NUMBER_SUBSTITUTION_METHOD method;
@@ -1065,7 +1065,7 @@ static DWRITE_NUMBER_SUBSTITUTION_METHOD get_number_substitutes(IDWriteNumberSub
     switch (method)
     {
     case DWRITE_NUMBER_SUBSTITUTION_METHOD_NATIONAL:
-        GetLocaleInfoEx(numbersubst->locale, lctype | LOCALE_SNATIVEDIGITS, digits, sizeof(digits)/sizeof(digits[0]));
+        GetLocaleInfoEx(numbersubst->locale, lctype | LOCALE_SNATIVEDIGITS, digits, digitslen);
         break;
     case DWRITE_NUMBER_SUBSTITUTION_METHOD_CONTEXTUAL:
     case DWRITE_NUMBER_SUBSTITUTION_METHOD_TRADITIONAL:
@@ -1079,7 +1079,7 @@ static DWRITE_NUMBER_SUBSTITUTION_METHOD get_number_substitutes(IDWriteNumberSub
                  break;
              }
         }
-        GetLocaleInfoEx(numbersubst->locale, lctype | LOCALE_SNATIVEDIGITS, digits, sizeof(digits)/sizeof(digits[0]));
+        GetLocaleInfoEx(numbersubst->locale, lctype | LOCALE_SNATIVEDIGITS, digits, digitslen);
         break;
     default:
         ;
@@ -1127,7 +1127,7 @@ static HRESULT WINAPI dwritetextanalyzer_GetGlyphs(IDWriteTextAnalyzer2 *iface,
     if (!string)
         return E_OUTOFMEMORY;
 
-    method = get_number_substitutes(substitution, digits);
+    method = get_number_substitutes(substitution, digits, sizeof(digits)/sizeof(digits[0]));
 
     for (i = 0; i < length; i++) {
         /* FIXME: set to better values */
-- 
2.12.2




More information about the wine-patches mailing list