summaryrefslogtreecommitdiffstats
path: root/utf8.c
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2009-11-24 16:40:52 -0800
committerKaz Kylheku <kaz@kylheku.com>2009-11-24 16:40:52 -0800
commit48bf7d07c10056a678ba9e0bc04f3612b98f5145 (patch)
tree921657f7cd129aa890efc7ac354f1dd5751f7a6a /utf8.c
parentde41db9357a570b42a583de3701a38431c010df8 (diff)
downloadtxr-48bf7d07c10056a678ba9e0bc04f3612b98f5145.tar.gz
txr-48bf7d07c10056a678ba9e0bc04f3612b98f5145.tar.bz2
txr-48bf7d07c10056a678ba9e0bc04f3612b98f5145.zip
utf8.c (utf8_from_uc): Fix bug introduced several commits ago (portingtxr-025
to C++). Caught by regression test suite. Found using git bisect.
Diffstat (limited to 'utf8.c')
-rw-r--r--utf8.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/utf8.c b/utf8.c
index c5c76761..96905b0f 100644
--- a/utf8.c
+++ b/utf8.c
@@ -80,6 +80,7 @@ size_t utf8_from_uc(wchar_t *wdst, const unsigned char *src)
case utf8_more3:
if (ch >= 0x80 && ch < 0xc0) {
wch <<= 6;
+ wch |= (ch & 0x3f);
state = (enum utf8_state) (state - 1);
if (state == utf8_init) {
if (wdst)