summaryrefslogtreecommitdiffstats
path: root/generic
diff options
context:
space:
mode:
authorhobbs <hobbs>2001-07-02 23:52:36 (GMT)
committerhobbs <hobbs>2001-07-02 23:52:36 (GMT)
commitc238b3e34e715ebabf756de119a3835f05ccc948 (patch)
tree7023b60ff29daa4a069d3e98fc63d32f1c00e8e7 /generic
parent0c316c90bf8fb99f438f2335cba517bc2438e71a (diff)
downloadtk-c238b3e34e715ebabf756de119a3835f05ccc948.zip
tk-c238b3e34e715ebabf756de119a3835f05ccc948.tar.gz
tk-c238b3e34e715ebabf756de119a3835f05ccc948.tar.bz2
* generic/tkEntry.c (DestroyEntry): used Tcl_EventuallyFree
instead of ckfree for entryPtr to prevent FMRs. [Bug #413904]
Diffstat (limited to 'generic')
-rw-r--r--generic/tkEntry.c10
1 files changed, 6 insertions, 4 deletions
diff --git a/generic/tkEntry.c b/generic/tkEntry.c
index 5555b64..805b208 100644
--- a/generic/tkEntry.c
+++ b/generic/tkEntry.c
@@ -12,7 +12,7 @@
* See the file "license.terms" for information on usage and redistribution
* of this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tkEntry.c,v 1.19 2001/04/03 04:40:50 hobbs Exp $
+ * RCS: @(#) $Id: tkEntry.c,v 1.20 2001/07/02 23:52:36 hobbs Exp $
*/
#include "tkInt.h"
@@ -1363,13 +1363,15 @@ DestroyEntry(memPtr)
entryPtr->tkwin = NULL;
/*
- * Tcl_EventuallyFree should be used here or better yet in the
+ * Tcl_EventuallyFree should be used in
* DestroyNotify branch of EntryEventProc. However, that can lead
* complications in Tk_FreeConfigOptions where the display for the
* entry has been deleted by Tk_DestroyWindow, which is needed
- * when freeing the cursor option.
+ * when freeing the cursor option. Also, there can be a timing
+ * issue were we wouldn't get called until too late in Tk clean-up,
+ * and it complains that we haven't freed our fonts yet.
*/
- ckfree((char *) entryPtr);
+ Tcl_EventuallyFree((ClientData) entryPtr, TCL_DYNAMIC);
}
/*