diff options
| author | jan.nijtmans <nijtmans@users.sourceforge.net> | 2023-07-19 13:04:51 (GMT) |
|---|---|---|
| committer | jan.nijtmans <nijtmans@users.sourceforge.net> | 2023-07-19 13:04:51 (GMT) |
| commit | 50eeabb1014676f4bcc1fe38a06a5d3ef8806044 (patch) | |
| tree | ea19a01182ab3d00f84e42a18d743db18b4dd42f /generic/tclEncoding.c | |
| parent | 0a3cfc79026050f3740f75dc472a4cd5ff284b57 (diff) | |
| download | tcl-50eeabb1014676f4bcc1fe38a06a5d3ef8806044.zip tcl-50eeabb1014676f4bcc1fe38a06a5d3ef8806044.tar.gz tcl-50eeabb1014676f4bcc1fe38a06a5d3ef8806044.tar.bz2 | |
Bugfix for escape-encoding, 'stolen' from TIP #671 branch
Diffstat (limited to 'generic/tclEncoding.c')
| -rw-r--r-- | generic/tclEncoding.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/generic/tclEncoding.c b/generic/tclEncoding.c index 539b520..deaabaa 100644 --- a/generic/tclEncoding.c +++ b/generic/tclEncoding.c @@ -3961,9 +3961,10 @@ EscapeToUtfProc( if ((checked == dataPtr->numSubTables + 2) || (flags & TCL_ENCODING_END)) { if (!PROFILE_STRICT(flags)) { + unsigned skip = longest > left ? left : longest; /* Unknown escape sequence */ dst += Tcl_UniCharToUtf(UNICODE_REPLACE_CHAR, dst); - src += longest; + src += skip; continue; } result = TCL_CONVERT_SYNTAX; |
