diff options
author | andreas_kupries <akupries@shaw.ca> | 2008-07-28 20:45:15 (GMT) |
---|---|---|
committer | andreas_kupries <akupries@shaw.ca> | 2008-07-28 20:45:15 (GMT) |
commit | 10ea20bb785acaeb65668000042284010fd63a70 (patch) | |
tree | 072265cf86e088a97bcfeba3fb8fd072fd3bbd91 | |
parent | 2931e2c849579bfd59bac1989e2051b22c2d4224 (diff) | |
download | tcl-10ea20bb785acaeb65668000042284010fd63a70.zip tcl-10ea20bb785acaeb65668000042284010fd63a70.tar.gz tcl-10ea20bb785acaeb65668000042284010fd63a70.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-25 Daniel Steffen <das@users.sourceforge.net> * tests/info.test (info-37.0): Add !singleTestInterp constraint; diff --git a/generic/tclBasic.c b/generic/tclBasic.c index 9afb5e7..0c0fbda 100644 --- a/generic/tclBasic.c +++ b/generic/tclBasic.c @@ -14,7 +14,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.295.2.6 2008/07/28 14:44:17 dgp Exp $ + * RCS: @(#) $Id: tclBasic.c,v 1.295.2.7 2008/07/28 20:45:15 andreas_kupries Exp $ */ #include "tclInt.h" @@ -4148,10 +4148,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. |