summaryrefslogtreecommitdiff
path: root/lout
diff options
context:
space:
mode:
authorSebastian Geerken <devnull@localhost>2013-01-02 10:00:02 +0100
committerSebastian Geerken <devnull@localhost>2013-01-02 10:00:02 +0100
commitea0cbd334be765eac1d47783c052d15642a407be (patch)
tree0806204dfcf2b68820ce469f0e498545ab59d702 /lout
parent9a533c36c2858875a31900fc86a3000a8f1d59bc (diff)
Fixed valgrind error in Hyphenator.
Diffstat (limited to 'lout')
-rw-r--r--lout/unicode.cc16
-rw-r--r--lout/unicode.hh4
2 files changed, 20 insertions, 0 deletions
diff --git a/lout/unicode.cc b/lout/unicode.cc
index 39d3a094..77bd8077 100644
--- a/lout/unicode.cc
+++ b/lout/unicode.cc
@@ -139,6 +139,22 @@ const char *nextUtf8Char (const char *s, int len)
return r;
}
+int numUtf8Chars (const char *s)
+{
+ int numUtf8 = 0;
+ for (const char *r = s; r; r = nextUtf8Char (r))
+ numUtf8++;
+ return numUtf8;
+}
+
+int numUtf8Chars (const char *s, int len)
+{
+ int numUtf8 = 0;
+ for (const char *r = s; len > 0 && r; r = nextUtf8Char (r, len))
+ numUtf8++;
+ return numUtf8;
+}
+
} // namespace lout
} // namespace unicode
diff --git a/lout/unicode.hh b/lout/unicode.hh
index cfde25e6..c74fd9b5 100644
--- a/lout/unicode.hh
+++ b/lout/unicode.hh
@@ -19,6 +19,10 @@ const char *nextUtf8Char (const char *s);
const char *nextUtf8Char (const char *s, int len);
+int numUtf8Chars (const char *s);
+
+int numUtf8Chars (const char *s, int len);
+
} // namespace lout
} // namespace unicode