diff options
author | dgp <dgp@users.sourceforge.net> | 2018-04-22 13:27:45 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2018-04-22 13:27:45 (GMT) |
commit | dc6bc431e92971fa4f3d95ed3f277e4e90c8191c (patch) | |
tree | e0f7a6ddec6958ff3a8d662ac966b4f7dd9b0423 /generic | |
parent | 24d501cb0d97f44e1df34cd4b0a4e51e7d830666 (diff) | |
parent | 8e06fd796be19c40e0e82a7d9c9e54d34e975504 (diff) | |
download | tcl-dc6bc431e92971fa4f3d95ed3f277e4e90c8191c.zip tcl-dc6bc431e92971fa4f3d95ed3f277e4e90c8191c.tar.gz tcl-dc6bc431e92971fa4f3d95ed3f277e4e90c8191c.tar.bz2 |
merge 8.6
Diffstat (limited to 'generic')
-rw-r--r-- | generic/tclExecute.c | 3 | ||||
-rw-r--r-- | generic/tclVar.c | 3 |
2 files changed, 2 insertions, 4 deletions
diff --git a/generic/tclExecute.c b/generic/tclExecute.c index 35743a1..b5b2918 100644 --- a/generic/tclExecute.c +++ b/generic/tclExecute.c @@ -3890,7 +3890,8 @@ TEBCresume( } TRACE(("%s %u \"%.30s\" => ", (flags ? "normal" : "noerr"), opnd, O2S(part2Ptr))); - if (TclIsVarArray(arrayPtr) && !UnsetTraced(arrayPtr)) { + if (TclIsVarArray(arrayPtr) && !UnsetTraced(arrayPtr) + && !(arrayPtr->flags & VAR_SEARCH_ACTIVE)) { varPtr = VarHashFindVar(arrayPtr->value.tablePtr, part2Ptr); if (varPtr && TclIsVarDirectUnsettable(varPtr)) { /* diff --git a/generic/tclVar.c b/generic/tclVar.c index 51eec61..889e6ba 100644 --- a/generic/tclVar.c +++ b/generic/tclVar.c @@ -5501,9 +5501,6 @@ DeleteArray( Tcl_Obj *objPtr; VarTrace *tracePtr; - if (varPtr->flags & VAR_SEARCH_ACTIVE) { - DeleteSearches(iPtr, varPtr); - } for (elPtr = VarHashFirstVar(varPtr->value.tablePtr, &search); elPtr != NULL; elPtr = VarHashNextVar(&search)) { if (TclIsVarScalar(elPtr) && (elPtr->value.objPtr != NULL)) { |