Anton Baskanov : sfnt2fon: Avoid out-of-bounds read (AddressSanitizer).

Alexandre Julliard julliard at winehq.org
Tue Aug 31 15:40:21 CDT 2021


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

Author: Anton Baskanov <baskanov at gmail.com>
Date:   Sun Aug 29 21:06:23 2021 +0700

sfnt2fon: Avoid out-of-bounds read (AddressSanitizer).

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45422
Signed-off-by: Anton Baskanov <baskanov at gmail.com>
Signed-off-by: Huw Davies <huw at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 tools/sfnt2fon/sfnt2fon.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/sfnt2fon/sfnt2fon.c b/tools/sfnt2fon/sfnt2fon.c
index 0d59bfc1db2..6427eb9f840 100644
--- a/tools/sfnt2fon/sfnt2fon.c
+++ b/tools/sfnt2fon/sfnt2fon.c
@@ -743,7 +743,7 @@ static struct fontinfo *fill_fontinfo( const char *face_name, int ppem, int enc,
         for(x = 0; x < ((info->dfCharTable[i].width + 7) / 8); x++) {
             for(y = 0; y < ppem; y++) {
                 if(y < ascent - face->glyph->bitmap_top ||
-                   y >=  face->glyph->bitmap.rows + ascent - face->glyph->bitmap_top) {
+                   y >= (int)face->glyph->bitmap.rows + ascent - face->glyph->bitmap_top) {
                     info->data[data_pos++] = 0;
                     continue;
                 }




More information about the wine-cvs mailing list