diff Core/Toolbox.cpp @ 2900:668d5ad73c74

Font::Render()
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 22 Oct 2018 14:20:21 +0200
parents 49b152059472
children ae20fccdd867
line wrap: on
line diff
--- a/Core/Toolbox.cpp	Thu Oct 18 12:03:51 2018 +0200
+++ b/Core/Toolbox.cpp	Mon Oct 22 14:20:21 2018 +0200
@@ -624,6 +624,14 @@
 #endif
 
 
+  static bool IsAsciiCharacter(uint8_t c)
+  {
+    return (c != 0 &&
+            c <= 127 &&
+            (c == '\n' || !iscntrl(c)));
+  }
+
+
   bool Toolbox::IsAsciiString(const void* data,
                               size_t size)
   {
@@ -631,7 +639,7 @@
 
     for (size_t i = 0; i < size; i++, p++)
     {
-      if (*p > 127 || *p == 0 || iscntrl(*p))
+      if (!IsAsciiCharacter(*p))
       {
         return false;
       }
@@ -654,7 +662,7 @@
     result.reserve(source.size() + 1);
     for (size_t i = 0; i < source.size(); i++)
     {
-      if (source[i] <= 127 && source[i] >= 0 && !iscntrl(source[i]))
+      if (IsAsciiCharacter(source[i]))
       {
         result.push_back(source[i]);
       }