summaryrefslogtreecommitdiffstats
path: root/generic/tclOOMethod.c
diff options
context:
space:
mode:
authordkf <dkf@noemail.net>2008-09-01 00:35:40 (GMT)
committerdkf <dkf@noemail.net>2008-09-01 00:35:40 (GMT)
commit1d48ca2d0bd9271d923f7696a1adb36d68fa7a4b (patch)
tree2579a1e6cb4beb302aec6d4a4b47951bd41033cb /generic/tclOOMethod.c
parent3ba1247021052286637c6c74dea44047b6fb3c4f (diff)
downloadtcl-1d48ca2d0bd9271d923f7696a1adb36d68fa7a4b.zip
tcl-1d48ca2d0bd9271d923f7696a1adb36d68fa7a4b.tar.gz
tcl-1d48ca2d0bd9271d923f7696a1adb36d68fa7a4b.tar.bz2
Improve the semantics of C-implemented destructors slightly.
FossilOrigin-Name: 879ea220fd5c7722445e38216126c4f64dd6da41
Diffstat (limited to 'generic/tclOOMethod.c')
-rw-r--r--generic/tclOOMethod.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/generic/tclOOMethod.c b/generic/tclOOMethod.c
index 75aef73..5371719 100644
--- a/generic/tclOOMethod.c
+++ b/generic/tclOOMethod.c
@@ -8,7 +8,7 @@
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclOOMethod.c,v 1.17 2008/08/23 18:53:12 msofer Exp $
+ * RCS: @(#) $Id: tclOOMethod.c,v 1.18 2008/09/01 00:35:42 dkf Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -643,6 +643,16 @@ InvokeProcedureMethod(
* call frame's lifetime). */
/*
+ * If the interpreter was deleted, we just skip to the next thing in the
+ * chain.
+ */
+
+ if (Tcl_InterpDeleted(interp)) {
+ return TclNRObjectContextInvokeNext(interp, context, objc, objv,
+ Tcl_ObjectContextSkippedArgs(context));
+ }
+
+ /*
* Allocate the special frame data.
*/