[CHARMAP]
authorHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Wed, 13 Jul 2016 15:50:44 +0000 (15:50 +0000)
committerHermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
Wed, 13 Jul 2016 15:50:44 +0000 (15:50 +0000)
Don't overrun FillGrid() when accessing the last elements. Rewrite the code using 'for' loops, in the same style as what is done elsewhere in the code. CID 1363552
CORE-11597 #resolve

svn path=/trunk/; revision=71924

reactos/base/applications/charmap/map.c

index 383d98f..3ce259f 100644 (file)
@@ -107,8 +107,9 @@ FillGrid(PMAP infoPtr,
     i = XCELLS * infoPtr->iYStart;
 
     added = 0;
-    x = y = 0;
-    while ((y <= YCELLS) && (x <= XCELLS))
+
+    for (y = 0; y < YCELLS; y++)
+    for (x = 0; x < XCELLS; x++)
     {
         ch = (WCHAR)infoPtr->ValidGlyphs[i];
 
@@ -131,14 +132,6 @@ FillGrid(PMAP infoPtr,
 
         i++;
         ch = (WCHAR)i;
-
-        // move to the next cell
-        x++;
-        if (x > XCELLS - 1)
-        {
-            x = 0;
-            y++;
-        }
     }
     SelectObject(ps->hdc,
                  hOldFont);