summaryrefslogtreecommitdiffstats
path: root/generic/tclResult.c
diff options
context:
space:
mode:
authorhobbs <hobbs@noemail.net>2003-07-16 21:25:06 (GMT)
committerhobbs <hobbs@noemail.net>2003-07-16 21:25:06 (GMT)
commit9a98ba7244d9dd30413b8da6fc40f89a51725006 (patch)
tree7420a60f355dca8b31bfe9fec2dc4a6bb9cf47be /generic/tclResult.c
parenta8b653812d9a254f7ea9112461dc7fbb0013ae4e (diff)
downloadtcl-9a98ba7244d9dd30413b8da6fc40f89a51725006.zip
tcl-9a98ba7244d9dd30413b8da6fc40f89a51725006.tar.gz
tcl-9a98ba7244d9dd30413b8da6fc40f89a51725006.tar.bz2
* generic/tclPreserve.c: In Result and Preserve'd routines, do not
* generic/tclUtil.c: assume that ckfree == free, as that is not * generic/tclResult.c: always true. [Bug 756791] (fuller) FossilOrigin-Name: bb94a3e5100baa4da853c56429f66ced107b7b72
Diffstat (limited to 'generic/tclResult.c')
-rw-r--r--generic/tclResult.c20
1 files changed, 7 insertions, 13 deletions
diff --git a/generic/tclResult.c b/generic/tclResult.c
index 367ca80..9cfbd63 100644
--- a/generic/tclResult.c
+++ b/generic/tclResult.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: tclResult.c,v 1.5 2002/01/25 20:40:55 dgp Exp $
+ * RCS: @(#) $Id: tclResult.c,v 1.5.2.1 2003/07/16 21:25:07 hobbs Exp $
*/
#include "tclInt.h"
@@ -198,8 +198,7 @@ Tcl_DiscardResult(statePtr)
if (statePtr->result == statePtr->appendResult) {
ckfree(statePtr->appendResult);
} else if (statePtr->freeProc) {
- if ((statePtr->freeProc == TCL_DYNAMIC)
- || (statePtr->freeProc == (Tcl_FreeProc *) free)) {
+ if (statePtr->freeProc == TCL_DYNAMIC) {
ckfree(statePtr->result);
} else {
(*statePtr->freeProc)(statePtr->result);
@@ -265,8 +264,7 @@ Tcl_SetResult(interp, string, freeProc)
*/
if (oldFreeProc != 0) {
- if ((oldFreeProc == TCL_DYNAMIC)
- || (oldFreeProc == (Tcl_FreeProc *) free)) {
+ if (oldFreeProc == TCL_DYNAMIC) {
ckfree(oldResult);
} else {
(*oldFreeProc)(oldResult);
@@ -359,8 +357,7 @@ Tcl_SetObjResult(interp, objPtr)
*/
if (iPtr->freeProc != NULL) {
- if ((iPtr->freeProc == TCL_DYNAMIC)
- || (iPtr->freeProc == (Tcl_FreeProc *) free)) {
+ if (iPtr->freeProc == TCL_DYNAMIC) {
ckfree(iPtr->result);
} else {
(*iPtr->freeProc)(iPtr->result);
@@ -413,8 +410,7 @@ Tcl_GetObjResult(interp)
TclInitStringRep(objResultPtr, iPtr->result, length);
if (iPtr->freeProc != NULL) {
- if ((iPtr->freeProc == TCL_DYNAMIC)
- || (iPtr->freeProc == (Tcl_FreeProc *) free)) {
+ if (iPtr->freeProc == TCL_DYNAMIC) {
ckfree(iPtr->result);
} else {
(*iPtr->freeProc)(iPtr->result);
@@ -751,8 +747,7 @@ Tcl_FreeResult(interp)
register Interp *iPtr = (Interp *) interp;
if (iPtr->freeProc != NULL) {
- if ((iPtr->freeProc == TCL_DYNAMIC)
- || (iPtr->freeProc == (Tcl_FreeProc *) free)) {
+ if (iPtr->freeProc == TCL_DYNAMIC) {
ckfree(iPtr->result);
} else {
(*iPtr->freeProc)(iPtr->result);
@@ -791,8 +786,7 @@ Tcl_ResetResult(interp)
ResetObjResult(iPtr);
if (iPtr->freeProc != NULL) {
- if ((iPtr->freeProc == TCL_DYNAMIC)
- || (iPtr->freeProc == (Tcl_FreeProc *) free)) {
+ if (iPtr->freeProc == TCL_DYNAMIC) {
ckfree(iPtr->result);
} else {
(*iPtr->freeProc)(iPtr->result);