diff options
author | mescalinum <mescalinum@users.sourceforge.net> | 2011-11-16 11:06:26 +0000 |
---|---|---|
committer | mescalinum <mescalinum@users.sourceforge.net> | 2011-11-16 11:06:26 +0000 |
commit | 8e465cd366902ca70ad10aad3428c37501f6f772 (patch) | |
tree | 24285330b2fd387569c79dce0f17312a6b52895c | |
parent | bb3429c7e76130165328180dd65451c64e7df9a1 (diff) |
remove obj-inst -> class-name mapping in tclpd_free
svn path=/trunk/externals/loaders/tclpd/; revision=15755
-rw-r--r-- | tcl_class.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/tcl_class.c b/tcl_class.c index 0ce39d2..085334a 100644 --- a/tcl_class.c +++ b/tcl_class.c @@ -208,6 +208,11 @@ void tclpd_free(t_tcl *x) { Tcl_DecrRefCount(av[1]); Tcl_DecrRefCount(av[2]); + // remove obj instance -> classname mapping + char delmapcmd[256]; + snprintf(delmapcmd, 256, "unset ::pd::classname(%s)", Tcl_GetStringFromObj(x->self, NULL)); + Tcl_Eval(tclpd_interp, delmapcmd); + // here ends the lifetime of x->classname and x->self Tcl_DecrRefCount(x->self); Tcl_DecrRefCount(x->classname); |