(svn r9083) -Codechange: Be more lenient when trimming UTF-8 strings and don't terminate the string when an invalid encoding is encountered, but only focus on maximum length.

This commit is contained in:
Darkvater 2007-03-10 00:26:19 +00:00
parent 53f48bbd4d
commit 3b3c7554b7
1 changed files with 2 additions and 1 deletions

View File

@ -282,7 +282,8 @@ size_t Utf8TrimString(char *s, size_t maxlen)
for (const char *ptr = strchr(s, '\0'); *s != '\0';) {
size_t len = Utf8EncodedCharLen(*s);
if (len == 0) break; // invalid encoding
/* Silently ignore invalid UTF8 sequences, our only concern trimming */
if (len == 0) len = 1;
/* Take care when a hard cutoff was made for the string and
* the last UTF8 sequence is invalid */