summaryrefslogtreecommitdiffstats
path: root/generic/tclCmdMZ.c
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2017-02-17 09:20:49 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2017-02-17 09:20:49 (GMT)
commit4d7b9162e578238f275688adcef5d56242b8ae7e (patch)
tree3c8641d77c107d37898ba2c255c1bc42d88c3ea7 /generic/tclCmdMZ.c
parent203058f02d4fbfde79ae5a95f9648f61681a36fa (diff)
downloadtcl-4d7b9162e578238f275688adcef5d56242b8ae7e.zip
tcl-4d7b9162e578238f275688adcef5d56242b8ae7e.tar.gz
tcl-4d7b9162e578238f275688adcef5d56242b8ae7e.tar.bz2
Stop problems with representation smashes.
Diffstat (limited to 'generic/tclCmdMZ.c')
-rw-r--r--generic/tclCmdMZ.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/generic/tclCmdMZ.c b/generic/tclCmdMZ.c
index d6d0152..110de4c 100644
--- a/generic/tclCmdMZ.c
+++ b/generic/tclCmdMZ.c
@@ -811,6 +811,13 @@ Tcl_RegsubObjCmd(
Tcl_AppendObjToObj(resultPtr, Tcl_GetObjResult(interp));
Tcl_ResetResult(interp);
+ /*
+ * Refetch the unicode, in case the representation was smashed by
+ * the user code.
+ */
+
+ wstring = Tcl_GetUnicodeFromObj(objPtr, &wlen);
+
offset += end;
if (end == 0 || start == end) {
/*