From 19c95bc13a078661ea638022c5934a1a9f069b91 Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Sat, 27 Mar 2021 00:44:18 +0100 Subject: [PATCH 1/2] msLoadFontSet(): fix regression of 03a96702c57cd762adc7e09b2b0decec303bd27c --- maplabel.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/maplabel.c b/maplabel.c index a4ce244f86..bc5b3fc661 100644 --- a/maplabel.c +++ b/maplabel.c @@ -818,7 +818,7 @@ int msLoadFontSet(fontSetObj *fontset, mapObj *map) char alias[64]; snprintf(alias, sizeof(alias), "%s", line); - char* ptr = strchr(alias, ' '); + char* ptr = strpbrk(alias, " \t"); if( !ptr ) continue; *ptr = '\0'; @@ -826,7 +826,7 @@ int msLoadFontSet(fontSetObj *fontset, mapObj *map) const char* file1StartPtr = line + (ptr - alias); file1StartPtr ++; /* Skip leading spaces */ - while( *file1StartPtr == ' ' ) + while( isspace((int)*file1StartPtr) ) file1StartPtr ++; if (!(*file1StartPtr) || !(*alias)) @@ -835,9 +835,12 @@ int msLoadFontSet(fontSetObj *fontset, mapObj *map) char file1[MS_PATH_LENGTH]; snprintf(file1, sizeof(file1), "%s", file1StartPtr); /* Remove trailing spaces */ - ptr = strrchr(file1, ' '); - if( ptr ) + ptr = file1 + strlen(file1) - 1; + while( ptr >= file1 && isspace((int)*ptr) ) + { *ptr = '\0'; + --ptr; + } bFullPath = 0; #if defined(_WIN32) && !defined(__CYGWIN__) From a6553f0f753e90e0e172b7fafcac559b30fc6c15 Mon Sep 17 00:00:00 2001 From: Even Rouault Date: Sat, 27 Mar 2021 00:44:40 +0100 Subject: [PATCH 2/2] msautotest/wxs/etc/fonts.txt: add tabulations to test fix of previous commit --- msautotest/wxs/etc/fonts.txt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/msautotest/wxs/etc/fonts.txt b/msautotest/wxs/etc/fonts.txt index 5bf663f990..4535f4d200 100644 --- a/msautotest/wxs/etc/fonts.txt +++ b/msautotest/wxs/etc/fonts.txt @@ -1,2 +1,2 @@ -Vera ./vera/Vera.ttf -VeraBd ./vera/VeraBd.ttf +Vera ./vera/Vera.ttf +VeraBd ./vera/VeraBd.ttf