diff options
author | mig <mig> | 2011-04-13 13:09:19 (GMT) |
---|---|---|
committer | mig <mig> | 2011-04-13 13:09:19 (GMT) |
commit | cb46d8443010d208077152c70a8d11ea8f10ba9e (patch) | |
tree | 13523f8aaf8376791660f1b2b620a68cf75c470a | |
parent | ff0935637a41961249473d9d1a77214f0de7c696 (diff) | |
download | tcl-cb46d8443010d208077152c70a8d11ea8f10ba9e.zip tcl-cb46d8443010d208077152c70a8d11ea8f10ba9e.tar.gz tcl-cb46d8443010d208077152c70a8d11ea8f10ba9e.tar.bz2 |
fix for [Bug 2662380], crash caused by appending to a variable with a write trace that unsets it
-rw-r--r-- | ChangeLog | 5 | ||||
-rw-r--r-- | generic/tclVar.c | 3 |
2 files changed, 7 insertions, 1 deletions
@@ -1,3 +1,8 @@ +2011-04-13 Miguel Sofer <msofer@users.sf.net> + + * generic/tclVar.c: fix for [Bug 2662380], crash caused by + appending to a variable with a write trace that unsets it. + 2011-04-04 Don Porter <dgp@users.sourceforge.net> * README: Updated README files, repairing broken URLs and diff --git a/generic/tclVar.c b/generic/tclVar.c index 3312191..a434bae 100644 --- a/generic/tclVar.c +++ b/generic/tclVar.c @@ -2699,7 +2699,8 @@ Tcl_AppendObjCmd(dummy, interp, objc, objv) varValuePtr = TclPtrSetVar(interp, varPtr, arrayPtr, part1, NULL, objv[i], (TCL_APPEND_VALUE | TCL_LEAVE_ERR_MSG)); - if (varValuePtr == NULL) { + if ((varValuePtr == NULL) || + (varValuePtr == ((Interp *) interp)->emptyObjPtr)) { return TCL_ERROR; } } |