]> git.xonotic.org Git - xonotic/darkplaces.git/commitdiff
fix off-by-one bug rendering characters like U+0100
authordivverent <divverent@d7cf8633-e32d-0410-b094-e92efae38249>
Tue, 19 Jan 2010 20:55:06 +0000 (20:55 +0000)
committerdivverent <divverent@d7cf8633-e32d-0410-b094-e92efae38249>
Tue, 19 Jan 2010 20:55:06 +0000 (20:55 +0000)
git-svn-id: svn://svn.icculus.org/twilight/trunk/darkplaces@9839 d7cf8633-e32d-0410-b094-e92efae38249

ft2.c
gl_draw.c

diff --git a/ft2.c b/ft2.c
index 0e7d31c6b04e42c58f1c24079658f4dc50f683c8..e983fc639259506e02ce38786413ddaf66750efa 100644 (file)
--- a/ft2.c
+++ b/ft2.c
@@ -1202,7 +1202,7 @@ qboolean Font_LoadMapForIndex(ft2_font_t *font, int map_index, Uchar _ch, ft2_fo
 
 ft2_font_map_t *FontMap_FindForChar(ft2_font_map_t *start, Uchar ch)
 {
-       while (start && start->start + FONT_CHARS_PER_MAP < ch)
+       while (start && start->start + FONT_CHARS_PER_MAP <= ch)
                start = start->next;
        if (start && start->start > ch)
                return NULL;
index da5935015d4332cd57e79aa22fa947cc681845b6..2f058761e799c096ed604f691790cc83b8a262b9 100644 (file)
--- a/gl_draw.c
+++ b/gl_draw.c
@@ -1241,7 +1241,8 @@ float DrawQ_TextWidth_UntilWidth_TrackColors_Scale(const char *text, size_t *max
                        }
                        x += width_of[ch] * dw;
                } else {
-                       if (!map || map == ft2_oldstyle_map || map->start < ch || map->start + FONT_CHARS_PER_MAP >= ch)
+                       //if (!map || map == ft2_oldstyle_map || map->start < ch || map->start + FONT_CHARS_PER_MAP >= ch)
+                       if (!map || map == ft2_oldstyle_map || ch < map->start || ch >= map->start + FONT_CHARS_PER_MAP)
                        {
                                map = FontMap_FindForChar(fontmap, ch);
                                if (!map)