summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--generic/tclUtf.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/generic/tclUtf.c b/generic/tclUtf.c
index 2f12015..32fb743 100644
--- a/generic/tclUtf.c
+++ b/generic/tclUtf.c
@@ -1274,6 +1274,7 @@ Tcl_UniCharToUpper(
}
#if TCL_UTF_MAX > 3
}
+ /* Clear away extension bits, if any */
ch &= 0x1FFFFF;
#endif
return (Tcl_UniChar) ch;
@@ -1310,6 +1311,7 @@ Tcl_UniCharToLower(
}
#if TCL_UTF_MAX > 3
}
+ /* Clear away extension bits, if any */
ch &= 0x1FFFFF;
#endif
return (Tcl_UniChar) ch;
@@ -1354,6 +1356,7 @@ Tcl_UniCharToTitle(
}
#if TCL_UTF_MAX > 3
}
+ /* Clear away extension bits, if any */
ch &= 0x1FFFFF;
#endif
return (Tcl_UniChar) ch;
@@ -1548,6 +1551,7 @@ Tcl_UniCharIsControl(
{
#if TCL_UTF_MAX > 3
if (UNICODE_OUT_OF_RANGE(ch)) {
+ /* Clear away extension bits, if any */
ch &= 0x1FFFFF;
if ((ch == 0xE0001) || ((ch >= 0xE0020) && (ch <= 0xE007F))) {
return 1;