summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2011-09-27 09:44:56 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2011-09-27 09:44:56 (GMT)
commit8c138f1da75d5de870dce2468bdaf9ab74d2f30b (patch)
treea0d891a9c2690d226a68104914880951973941bd
parentb27dc4dc281ba4046d77aa3dbc170178785ec647 (diff)
downloadtcl-8c138f1da75d5de870dce2468bdaf9ab74d2f30b.zip
tcl-8c138f1da75d5de870dce2468bdaf9ab74d2f30b.tar.gz
tcl-8c138f1da75d5de870dce2468bdaf9ab74d2f30b.tar.bz2
Unbreak TCL_ARGV_AUTO_REST macro, found during testing.
-rw-r--r--generic/tclIndexObj.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/generic/tclIndexObj.c b/generic/tclIndexObj.c
index 4e04f71..8651542 100644
--- a/generic/tclIndexObj.c
+++ b/generic/tclIndexObj.c
@@ -1222,7 +1222,14 @@ Tcl_ParseArgsObjv(
objc--;
break;
case TCL_ARGV_REST:
- *((int *) infoPtr->dstPtr) = dstIndex;
+ /*
+ * Only store the point where we got to if it's not to be written
+ * to NULL, so that TCL_ARGV_AUTO_REST works.
+ */
+
+ if (infoPtr->dstPtr != NULL) {
+ *((int *) infoPtr->dstPtr) = dstIndex;
+ }
goto argsDone;
case TCL_ARGV_FLOAT:
if (objc == 0) {