diff options
author | andreas_kupries <akupries@shaw.ca> | 2008-07-28 21:06:07 (GMT) |
---|---|---|
committer | andreas_kupries <akupries@shaw.ca> | 2008-07-28 21:06:07 (GMT) |
commit | 8f13bd76fede30fc0ad2cce6aa00582ec5eecd70 (patch) | |
tree | 1bff7a81898decb4cc220c44edada8cef2074b59 | |
parent | 9eee73cf65297a361965729c5e4a692932dba00a (diff) | |
download | tcl-8f13bd76fede30fc0ad2cce6aa00582ec5eecd70.zip tcl-8f13bd76fede30fc0ad2cce6aa00582ec5eecd70.tar.gz tcl-8f13bd76fede30fc0ad2cce6aa00582ec5eecd70.tar.bz2 |
* generic/tclBasic.c: Added missing ref count when creating an
empty string as path (TclEvalEx). In 8.4 the missing code caused
panics in the testsuite. It doesn't in 8.5. I am guessing that the
code path with the missing the incr-refcount is not invoked any
longer. Because the bug in itself is certainly the same.
-rw-r--r-- | ChangeLog | 8 | ||||
-rw-r--r-- | generic/tclBasic.c | 4 |
2 files changed, 10 insertions, 2 deletions
@@ -1,3 +1,11 @@ +2008-07-28 Andreas Kupries <andreask@activestate.com> + + * generic/tclBasic.c: Added missing ref count when creating an + empty string as path (TclEvalEx). In 8.4 the missing code caused + panics in the testsuite. It doesn't in 8.5. I am guessing that the + code path with the missing the incr-refcount is not invoked any + longer. Because the bug in itself is certainly the same. + 2008-07-27 Donal K. Fellows <dkf@users.sf.net> * generic/tclOOMethod.c (PushMethodCallFrame): Remove hack that should diff --git a/generic/tclBasic.c b/generic/tclBasic.c index eb5e1c8..87a36b3 100644 --- a/generic/tclBasic.c +++ b/generic/tclBasic.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: tclBasic.c,v 1.331 2008/07/25 22:11:19 andreas_kupries Exp $ + * RCS: @(#) $Id: tclBasic.c,v 1.332 2008/07/28 21:06:09 andreas_kupries Exp $ */ #include "tclInt.h" @@ -4923,10 +4923,10 @@ TclEvalEx( goto error; } eeFramePtr->data.eval.path = norm; - Tcl_IncrRefCount(eeFramePtr->data.eval.path); } else { TclNewLiteralStringObj(eeFramePtr->data.eval.path, ""); } + Tcl_IncrRefCount(eeFramePtr->data.eval.path); } else { /* * Set up for plain eval. |