summaryrefslogtreecommitdiffstats
path: root/generic/tclStringObj.c
diff options
context:
space:
mode:
authordgp <dgp@users.sourceforge.net>2018-04-16 14:46:58 (GMT)
committerdgp <dgp@users.sourceforge.net>2018-04-16 14:46:58 (GMT)
commitb5d6b4f138acca52dc403f4356c3a2bbacd9864f (patch)
treed8b0e8574602d7d73a0b57f12a331824d7a10016 /generic/tclStringObj.c
parentcbbab84b71ec74a6bd4d4a1a19cc673aa451487b (diff)
parent4647cfb6658cf00403d6f99e0c438661994137e1 (diff)
downloadtcl-b5d6b4f138acca52dc403f4356c3a2bbacd9864f.zip
tcl-b5d6b4f138acca52dc403f4356c3a2bbacd9864f.tar.gz
tcl-b5d6b4f138acca52dc403f4356c3a2bbacd9864f.tar.bz2
merge 8.7
Diffstat (limited to 'generic/tclStringObj.c')
-rw-r--r--generic/tclStringObj.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/generic/tclStringObj.c b/generic/tclStringObj.c
index 9913160..fa50d6d 100644
--- a/generic/tclStringObj.c
+++ b/generic/tclStringObj.c
@@ -1972,6 +1972,7 @@ Tcl_AppendFormatToObj(
if (cmpResult == MP_EQ) gotHash = 0;
if (ch == 'u') {
if (isNegative) {
+ mp_clear(&big);
msg = "unsigned bignum format is invalid";
errCode = "BADUNSIGNED";
goto errorMsg;
@@ -3205,6 +3206,8 @@ TclStringCat(
dst += more;
}
}
+ /* Must NUL-terminate! */
+ *dst = '\0';
}
return objResultPtr;
@@ -3637,6 +3640,7 @@ TclStringReplace(
}
result = Tcl_NewByteArrayObj(NULL, numBytes - count + newBytes);
/* PANIC? */
+ Tcl_SetByteArrayLength(result, 0);
TclAppendBytesToByteArray(result, bytes, first);
TclAppendBytesToByteArray(result, iBytes, newBytes);
TclAppendBytesToByteArray(result, bytes + first + count,