diff options
| -rw-r--r-- | generic/tclUtf.c | 4 | ||||
| -rw-r--r-- | tests/utf.test | 8 | ||||
| -rw-r--r-- | win/tclWinSock.c | 2 |
3 files changed, 10 insertions, 4 deletions
diff --git a/generic/tclUtf.c b/generic/tclUtf.c index e1cde17..90e974f 100644 --- a/generic/tclUtf.c +++ b/generic/tclUtf.c @@ -1651,6 +1651,7 @@ Tcl_UniCharToUpper( ch -= GetDelta(info); } } + /* Clear away extension bits, if any */ return ch & 0x1FFFFF; } @@ -1682,6 +1683,7 @@ Tcl_UniCharToLower( ch += GetDelta(info); } } + /* Clear away extension bits, if any */ return ch & 0x1FFFFF; } @@ -1721,6 +1723,7 @@ Tcl_UniCharToTitle( ch -= GetDelta(info); } } + /* Clear away extension bits, if any */ return ch & 0x1FFFFF; } @@ -1908,6 +1911,7 @@ Tcl_UniCharIsControl( int ch) /* Unicode character to test. */ { if (UNICODE_OUT_OF_RANGE(ch)) { + /* Clear away extension bits, if any */ ch &= 0x1FFFFF; if ((ch == 0xE0001) || ((ch >= 0xE0020) && (ch <= 0xE007F))) { return 1; diff --git a/tests/utf.test b/tests/utf.test index 652a619..0a29e87 100644 --- a/tests/utf.test +++ b/tests/utf.test @@ -1210,7 +1210,7 @@ test utf-19.1 {TclUniCharLen} -body { unset -nocomplain foo } -result {1 4} -test utf-20.1 {TclUniCharNcmp} {fullutf knownBug} { +test utf-20.1 {TclUniCharNcmp} {ucs4} { string compare [string range [format %c 0xFFFF] 0 0] [string range [format %c 0x10000] 0 0] } -1 @@ -1331,8 +1331,10 @@ UniCharCaseCmpTest < a b UniCharCaseCmpTest > b a UniCharCaseCmpTest > B a UniCharCaseCmpTest > aBcB abca -UniCharCaseCmpTest < \uFFFF [format %c 0x10000] {fullutf knownBug} -UniCharCaseCmpTest < \uFFFF \U10000 {Uesc fullutf knownBug} +UniCharCaseCmpTest < \uFFFF [format %c 0x10000] ucs4 +UniCharCaseCmpTest < \uFFFF \U10000 {Uesc ucs4} +UniCharCaseCmpTest > [format %c 0x10000] \uFFFF ucs4 +UniCharCaseCmpTest > \U10000 \uFFFF {Uesc ucs4} diff --git a/win/tclWinSock.c b/win/tclWinSock.c index 87e0dc6..48b3cee 100644 --- a/win/tclWinSock.c +++ b/win/tclWinSock.c @@ -372,7 +372,7 @@ InitializeHostName( Tcl_DString ds; Tcl_DStringInit(&ds); - if (GetComputerNameExW(ComputerNameDnsFullyQualified, wbuf, &length) != 0) { + if (GetComputerNameExW(ComputerNamePhysicalDnsFullyQualified, wbuf, &length) != 0) { /* * Convert string from native to UTF then change to lowercase. */ |
