summaryrefslogtreecommitdiffstats
path: root/generic/tclStringObj.c
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2022-03-24 23:29:50 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2022-03-24 23:29:50 (GMT)
commit5438d045182b2bc669f663a22728d7306c459112 (patch)
treec98039174a5452c59c349043b4140b9b4f4c2865 /generic/tclStringObj.c
parent4576277c9931b6267da5083fb250652d077bb819 (diff)
downloadtcl-5438d045182b2bc669f663a22728d7306c459112.zip
tcl-5438d045182b2bc669f663a22728d7306c459112.tar.gz
tcl-5438d045182b2bc669f663a22728d7306c459112.tar.bz2
bugfix: Handle NULL characters in Tcl_GetCharLength()
Diffstat (limited to 'generic/tclStringObj.c')
-rw-r--r--generic/tclStringObj.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/generic/tclStringObj.c b/generic/tclStringObj.c
index e8777cd..988c6e5 100644
--- a/generic/tclStringObj.c
+++ b/generic/tclStringObj.c
@@ -681,7 +681,8 @@ Tcl_GetCharLength(
(void) Tcl_GetByteArrayFromObj(objPtr, &numChars);
} else {
- numChars = Tcl_NumUtfChars(Tcl_GetString(objPtr), -1);
+ Tcl_GetString(objPtr);
+ numChars = Tcl_NumUtfChars(objPtr->bytes, objPtr->length);
}
return numChars;
}