summaryrefslogtreecommitdiffstats
path: root/src/common
diff options
context:
space:
mode:
authorPiotr Dziwinski <piotrdz@gmail.com>2012-08-06 20:20:50 +0200
committerPiotr Dziwinski <piotrdz@gmail.com>2012-08-06 20:20:50 +0200
commitf7e78b21e9655604ba6fba1d068a9bf7f00b85a5 (patch)
tree51c54103d52ea420ea21608cdc9f9163959eb7bd /src/common
parent61bfb22f27f5216f989c023a5e39fad7e356d2d6 (diff)
downloadcolobot-f7e78b21e9655604ba6fba1d068a9bf7f00b85a5.tar.gz
colobot-f7e78b21e9655604ba6fba1d068a9bf7f00b85a5.tar.bz2
colobot-f7e78b21e9655604ba6fba1d068a9bf7f00b85a5.zip
Font rendering
- implemented rest of CText interface excluding some minor features
Diffstat (limited to 'src/common')
-rw-r--r--src/common/stringutils.cpp10
1 files changed, 3 insertions, 7 deletions
diff --git a/src/common/stringutils.cpp b/src/common/stringutils.cpp
index 585bb46..12a3179 100644
--- a/src/common/stringutils.cpp
+++ b/src/common/stringutils.cpp
@@ -135,15 +135,11 @@ int StrUtils::Utf8CharSizeAt(const std::string &str, unsigned int pos)
size_t StrUtils::Utf8StringLength(const std::string &str)
{
size_t result = 0;
- for (unsigned int i = 0; i < str.size(); ++i)
+ unsigned int i = 0;
+ while (i < str.size())
{
- char ch = str[i];
- if ((ch & 0x80) == 0)
+ i += Utf8CharSizeAt(str, i);
++result;
- else if ((ch & 0xC0) == 0xC0)
- result += 2;
- else
- result += 3;
}
return result;
}