String API: BLI_ascii_strtolower/upper now check NULL terminator
authorCampbell Barton <ideasman42@gmail.com>
Tue, 24 Dec 2013 14:20:46 +0000 (01:20 +1100)
committerCampbell Barton <ideasman42@gmail.com>
Tue, 24 Dec 2013 14:20:46 +0000 (01:20 +1100)
This wasn't needed before now, but since recent change to bUnit_ReplaceString,
it uses in a context where NULL terminator is expected - best add.
(spotted by Sergey)

source/blender/blenlib/intern/string.c

index 572b142d04468570ce500c344ce0ec71ca767ffe..0ce40f717d4e08231bcebc94a5eb0ab116c79492 100644 (file)
@@ -582,7 +582,7 @@ void BLI_ascii_strtolower(char *str, const size_t len)
 {
        size_t i;
 
-       for (i = 0; i < len; i++)
+       for (i = 0; (i < len) && str[i]; i++)
                if (str[i] >= 'A' && str[i] <= 'Z')
                        str[i] += 'a' - 'A';
 }
@@ -591,7 +591,7 @@ void BLI_ascii_strtoupper(char *str, const size_t len)
 {
        size_t i;
 
-       for (i = 0; i < len; i++)
+       for (i = 0; (i < len) && str[i]; i++)
                if (str[i] >= 'a' && str[i] <= 'z')
                        str[i] -= 'a' - 'A';
 }