summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjan.nijtmans <nijtmans@users.sourceforge.net>2017-01-20 16:20:27 (GMT)
committerjan.nijtmans <nijtmans@users.sourceforge.net>2017-01-20 16:20:27 (GMT)
commit7fcf2e495ebdd49002ba5bfa74c2aa5d97e7c50a (patch)
treee05eace4e55e50d7dc763192cec5e9a237556291
parent3f648e4efddf57078b99ef451e9418fbec4b3abe (diff)
parentf421ab92dcd3d8e15e14424401e18ace004fbb5e (diff)
downloadtcl-7fcf2e495ebdd49002ba5bfa74c2aa5d97e7c50a.zip
tcl-7fcf2e495ebdd49002ba5bfa74c2aa5d97e7c50a.tar.gz
tcl-7fcf2e495ebdd49002ba5bfa74c2aa5d97e7c50a.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 57fb18f..6741377 100644
--- a/generic/tclLink.c
+++ b/generic/tclLink.c
@@ -722,8 +722,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,
@@ -735,7 +735,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;
}