summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2017-01-20 16:18:00 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2017-01-20 16:18:00 (GMT)
commitd7895c4c2e0436ec8719c4a8b703317fea2bade4 (patch)
treedd0c8bc49f4c0fae3214d03e67f7af853cec80c2
parent904a6ee79a2afc2558c3210318fe5c275e012674 (diff)
downloadtcl-d7895c4c2e0436ec8719c4a8b703317fea2bade4.zip
tcl-d7895c4c2e0436ec8719c4a8b703317fea2bade4.tar.gz
tcl-d7895c4c2e0436ec8719c4a8b703317fea2bade4.tar.bz2
Fix [39f6304c2e90549c209cd11a7920dc9921b9f48e|39f6304c2e] follow-up: Make Tcl_LinkVar toleranto to the empty string as well
-rw-r--r--generic/tclLink.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/generic/tclLink.c b/generic/tclLink.c
index 0b21997..2dc2e47 100644
--- a/generic/tclLink.c
+++ b/generic/tclLink.c
@@ -724,8 +724,8 @@ SetInvalidRealFromAny(Tcl_Interp *interp, Tcl_Obj *objPtr) {
/*
* This function checks for integer representations, which are valid
* when linking with C variables, but which are invalid in other
- * contexts in Tcl. Handled are "+", "-", "0x", "0b" and "0o" (upper-
- * and lowercase). See bug [39f6304c2e].
+ * contexts in Tcl. Handled are "", "+", "-", "0x", "0b" and "0o"
+ * (upperand lowercase). See bug [39f6304c2e].
*/
int
GetInvalidIntFromObj(Tcl_Obj *objPtr,
@@ -737,7 +737,8 @@ GetInvalidIntFromObj(Tcl_Obj *objPtr,
if ((length == 1) && strchr("+-", str[0])) {
*intPtr = (str[0] == '+');
return TCL_OK;
- } else if ((length == 2) && (str[0] == '0') && strchr("xXbBoO", str[1])) {
+ } else if ((length == 0) ||
+ ((length == 2) && (str[0] == '0') && strchr("xXbBoO", str[1]))) {
*intPtr = 0;
return TCL_OK;
}