Artifact
aba2b3507e172098033f96d73e87945963fb65307c7c93712669c009d7081725:
- File
generic/tclDecls.h
-
2020-05-01 08:51:09
— part of check-in
[fb85042c66]
on branch bug-ed29806baf-8.7
— Fix [ed29806baf] by introducing TclUCS4Complete(). All other calls of Tcl_UtfToUniChar() are suspicious, because those cannot handle 4-byte UTF-8 sequences reliable.
So, there's more work to do, but this part can already be backported to Tcl 8.6 and see where we get.
(user:
jan.nijtmans
size: 182817)
-
2020-05-01 14:20:21
— part of check-in
[1d9487bc7e]
on branch core-8-branch
— Fix first part of [ed29806baf]: Tcl_UtfToUniChar reads more than TCL_UTF_MAX bytes.
Tcl_UtfToUniChar() now never reads more than TCL_UTF_MAX bytes any more.
Since the UtfToUtf encoder/decoder now uses TclUtfToUCS4() it doesn't join 2 surrogates as 2 x 3-byte sequences any more. Actually, it shouldn't, because such sequences are invalid UTF-8.
Therefore, added the ucs2 constraint to testcase encoding-15.4. Let's see how TIP #573 goes, this TIP should make this change official.
Other callers of Tcl_UtfToUniChar() needs to be revised for the same problem. Most callers will need to change Tcl_UtfToUniChar() -> TclUtfToUCS4() and Tcl_UtfCharComplete() -> TclUCS4Complete(), but that's not done yet.
(user:
jan.nijtmans
size: 182817)
-
2020-05-01 14:20:21
— part of check-in
[1d9487bc7e]
on branch core-8-branch
— Fix first part of [ed29806baf]: Tcl_UtfToUniChar reads more than TCL_UTF_MAX bytes.
Tcl_UtfToUniChar() now never reads more than TCL_UTF_MAX bytes any more.
Since the UtfToUtf encoder/decoder now uses TclUtfToUCS4() it doesn't join 2 surrogates as 2 x 3-byte sequences any more. Actually, it shouldn't, because such sequences are invalid UTF-8.
Therefore, added the ucs2 constraint to testcase encoding-15.4. Let's see how TIP #573 goes, this TIP should make this change official.
Other callers of Tcl_UtfToUniChar() needs to be revised for the same problem. Most callers will need to change Tcl_UtfToUniChar() -> TclUtfToUCS4() and Tcl_UtfCharComplete() -> TclUCS4Complete(), but that's not done yet.
(user:
jan.nijtmans
size: 182817)
-
2020-05-06 09:44:05
— part of check-in
[97679b4f1d]
on branch tip-573
— Merge 8.7
(user:
jan.nijtmans
size: 182817)
-
2020-05-24 22:34:15
— part of check-in
[3184183373]
on branch jn-index-reform
— Merge 8.7
(user:
jan.nijtmans
size: 182817)
-
2020-06-10 09:40:32
— part of check-in
[36e47c859d]
on branch death-to-dbgx
— Merge 8.7
(user:
jan.nijtmans
size: 182817)