summaryrefslogtreecommitdiffstats
path: root/generic/tclParse.c
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2018-06-17 16:07:09 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2018-06-17 16:07:09 (GMT)
commit8047a470ef35faeafe18de166f773a78097b3fc2 (patch)
tree3dde071c08ece650afe7d158384acd3cc6c20d30 /generic/tclParse.c
parent2b739c838a2b0f6dc7e64fad24eeb661d1a437ba (diff)
downloadtcl-8047a470ef35faeafe18de166f773a78097b3fc2.zip
tcl-8047a470ef35faeafe18de166f773a78097b3fc2.tar.gz
tcl-8047a470ef35faeafe18de166f773a78097b3fc2.tar.bz2
Fix [53cad613d8a4de166e680f09a6c6399ebddbc17c|53cad613d8]: TIP 389 implementation makes Tk tests font-4.12 and font-4.15 fail. (Fix it in 8.6 too, for benefit of androwish)
Diffstat (limited to 'generic/tclParse.c')
-rw-r--r--generic/tclParse.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/generic/tclParse.c b/generic/tclParse.c
index f2cf322..fc7f77b 100644
--- a/generic/tclParse.c
+++ b/generic/tclParse.c
@@ -991,6 +991,14 @@ TclParseBackslash(
if (readPtr != NULL) {
*readPtr = count;
}
+#if TCL_UTF_MAX >= 4
+ if ((result & 0xFC00) == 0xD800) {
+ dst[2] = (char) ((result | 0x80) & 0xBF);
+ dst[1] = (char) (((result >> 6) | 0x80) & 0xBF);
+ dst[0] = (char) ((result >> 12) | 0xE0);
+ return 3;
+ }
+#endif
return Tcl_UniCharToUtf(result, dst);
}