more textsplit tweaking

This commit is contained in:
dockes
2006-01-28 10:23:55 +00:00
parent c50f023002
commit 8c9eb8c6d3
6 changed files with 118 additions and 114 deletions
+6 -2
View File
@@ -1,6 +1,6 @@
#ifndef _UTF8ITER_H_INCLUDED_
#define _UTF8ITER_H_INCLUDED_
/* @(#$Id: utf8iter.h,v 1.4 2005-12-07 15:41:50 dockes Exp $ (C) 2004 J.F.Dockes */
/* @(#$Id: utf8iter.h,v 1.5 2006-01-28 10:23:55 dockes Exp $ (C) 2004 J.F.Dockes */
/**
* A small helper class to iterate over utf8 strings. This is not an
@@ -44,6 +44,7 @@ class Utf8Iter {
cl = get_cl(pos);
if (!poslok(pos, cl)) {
bad = true;
pos = s.length();
cl = 0;
return -1;
}
@@ -91,6 +92,7 @@ class Utf8Iter {
unsigned int val = getvalueat(pos, cl);
if (val == (unsigned int)-1) {
bad = true;
pos = s.length();
cl = 0;
}
return val;
@@ -142,7 +144,9 @@ class Utf8Iter {
return s.substr(pos, cl);
}
bool eof() {
return bad || pos == s.length();
// Note: we always ensure that pos == s.length() when setting bad to
// true
return pos == s.length();
}
bool error() {
return bad;