summaryrefslogtreecommitdiff
path: root/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx
diff options
context:
space:
mode:
authorManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com>2022-03-21 10:31:09 +0100
committerManoloFLTK <41016272+ManoloFLTK@users.noreply.github.com>2022-03-21 10:31:09 +0100
commit7e76929aff68ccde48c63eb8f08c144de43cc59f (patch)
treef6f14b120908427811c19a08f866c49ef8a761de /src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx
parent19439e8e0a30aa3d4a82b63fd51f6b0d44a6012f (diff)
Fix for issue #416: Fl_Xlib_Graphics_Driver_font_xft.cxx has a libasan error.
Diffstat (limited to 'src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx')
-rw-r--r--src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx10
1 files changed, 5 insertions, 5 deletions
diff --git a/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx b/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx
index c438dd5d5..723706f9b 100644
--- a/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx
+++ b/src/drivers/Xlib/Fl_Xlib_Graphics_Driver_font_xft.cxx
@@ -1321,11 +1321,11 @@ int Fl_Xlib_Graphics_Driver::descent_unscaled() {
static int font_name_process(const char *name, char &face) {
int l = strlen(name);
face = ' ';
- if (!memcmp(name + l - 8, " Regular", 8)) l -= 8;
- else if (!memcmp(name + l - 6, " Plain", 6)) l -= 6;
- else if (!memcmp(name + l - 12, " Bold Italic", 12)) {l -= 12; face='P';}
- else if (!memcmp(name + l - 7, " Italic", 7)) {l -= 7; face='I';}
- else if (!memcmp(name + l - 5, " Bold", 5)) {l -= 5; face='B';}
+ if (l > 8 && !memcmp(name + l - 8, " Regular", 8)) l -= 8;
+ else if (l > 6 && !memcmp(name + l - 6, " Plain", 6)) l -= 6;
+ else if (l > 12 && !memcmp(name + l - 12, " Bold Italic", 12)) {l -= 12; face='P';}
+ else if (l > 7 && !memcmp(name + l - 7, " Italic", 7)) {l -= 7; face='I';}
+ else if (l > 5 && !memcmp(name + l - 5, " Bold", 5)) {l -= 5; face='B';}
return l;
}