diff options
author | dkf <donal.k.fellows@manchester.ac.uk> | 2008-09-01 00:35:40 (GMT) |
---|---|---|
committer | dkf <donal.k.fellows@manchester.ac.uk> | 2008-09-01 00:35:40 (GMT) |
commit | 95660b09be94d6eb4b0482d33c78d8880e0c14cb (patch) | |
tree | 2579a1e6cb4beb302aec6d4a4b47951bd41033cb /generic/tclOOMethod.c | |
parent | 4c5d518f5499a0a9f50e08bba0484cb6650b816a (diff) | |
download | tcl-95660b09be94d6eb4b0482d33c78d8880e0c14cb.zip tcl-95660b09be94d6eb4b0482d33c78d8880e0c14cb.tar.gz tcl-95660b09be94d6eb4b0482d33c78d8880e0c14cb.tar.bz2 |
Improve the semantics of C-implemented destructors slightly.
Diffstat (limited to 'generic/tclOOMethod.c')
-rw-r--r-- | generic/tclOOMethod.c | 12 |
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. */ |