summaryrefslogtreecommitdiffstats
path: root/generic/tclTimer.c
diff options
context:
space:
mode:
authorsebres <sebres@users.sourceforge.net>2017-07-03 13:25:52 (GMT)
committersebres <sebres@users.sourceforge.net>2017-07-03 13:25:52 (GMT)
commitb39f779d1efe91fb83782a84d75e0e6bc055a597 (patch)
treefc1c083878d2824e5138cd85338ba7b40d1203e2 /generic/tclTimer.c
parent251c15c11767bc6e33809b3f13eabc1771a0ba85 (diff)
downloadtcl-b39f779d1efe91fb83782a84d75e0e6bc055a597.zip
tcl-b39f779d1efe91fb83782a84d75e0e6bc055a597.tar.gz
tcl-b39f779d1efe91fb83782a84d75e0e6bc055a597.tar.bz2
after info, after cancel: compare interpreter of the timer-events by direct retrieving via internal representation (ignore foreign events), test cases extended.
Diffstat (limited to 'generic/tclTimer.c')
-rw-r--r--generic/tclTimer.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/generic/tclTimer.c b/generic/tclTimer.c
index 4d26742..df974ab 100644
--- a/generic/tclTimer.c
+++ b/generic/tclTimer.c
@@ -1273,7 +1273,7 @@ Tcl_AfterObjCmd(
Tcl_DecrRefCount(commandPtr);
}
}
- if (afterPtr != NULL) {
+ if (afterPtr != NULL && afterPtr->assocPtr->interp == interp) {
TclDeleteTimerEntry(AfterInfo2TimerEntry(afterPtr));
}
break;
@@ -1338,7 +1338,7 @@ Tcl_AfterObjCmd(
}
afterPtr = GetAfterEvent(assocPtr, objv[2]);
- if (afterPtr == NULL) {
+ if (afterPtr == NULL || afterPtr->assocPtr->interp != interp) {
Tcl_AppendResult(interp, "event \"", TclGetString(objv[2]),
"\" doesn't exist", NULL);
return TCL_ERROR;