From 2c99a69cafec5cc9658b02d3c5e3ac8a56358744 Mon Sep 17 00:00:00 2001 From: Miguel Sofer Date: Sat, 31 Jul 2010 20:28:02 +0000 Subject: * generic/tclVar.c: fix for crash [Bug 3037525]: lose fickle optimisation in TclDeleteVars (used for runtime-created locals) --- ChangeLog | 5 +++++ generic/tclVar.c | 9 ++------- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/ChangeLog b/ChangeLog index 50d1473..d7f056d 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,8 @@ +2010-07-28 Miguel Sofer + + * generic/tclVar.c: fix for crash [Bug 3037525]: lose fickle + optimisation in TclDeleteVars (used for runtime-created locals) + 2010-07-29 Jan Nijtmans * compat/zlib/win32/README.txt Official build of zlib1.dll 1.2.5 is diff --git a/generic/tclVar.c b/generic/tclVar.c index c07cc6f..7587eec 100644 --- a/generic/tclVar.c +++ b/generic/tclVar.c @@ -16,7 +16,7 @@ * See the file "license.terms" for information on usage and redistribution of * this file, and for a DISCLAIMER OF ALL WARRANTIES. * - * RCS: @(#) $Id: tclVar.c,v 1.199 2010/05/31 08:54:14 nijtmans Exp $ + * RCS: @(#) $Id: tclVar.c,v 1.200 2010/07/31 20:28:04 msofer Exp $ */ #include "tclInt.h" @@ -5330,14 +5330,9 @@ TclDeleteVars( for (varPtr = VarHashFirstVar(tablePtr, &search); varPtr != NULL; varPtr = VarHashNextVar(&search)) { - /* - * Lie about the validity of the hashtable entry. In this way the - * variables will be deleted by VarHashDeleteTable. - */ - - VarHashInvalidateEntry(varPtr); UnsetVarStruct(varPtr, NULL, iPtr, VarHashGetKey(varPtr), NULL, flags, -1); + VarHashDeleteEntry(varPtr); } VarHashDeleteTable(tablePtr); } -- cgit v0.12