diff options
author | hobbs <hobbs@noemail.net> | 2001-07-02 23:52:35 (GMT) |
---|---|---|
committer | hobbs <hobbs@noemail.net> | 2001-07-02 23:52:35 (GMT) |
commit | 458ccc9f0b3bbdea64a9f40233d2a4262948dd10 (patch) | |
tree | 7023b60ff29daa4a069d3e98fc63d32f1c00e8e7 /generic/tkEntry.c | |
parent | d19cd9c7677adf9d1d32d04a4c52f5c53821e0ca (diff) | |
download | tk-458ccc9f0b3bbdea64a9f40233d2a4262948dd10.zip tk-458ccc9f0b3bbdea64a9f40233d2a4262948dd10.tar.gz tk-458ccc9f0b3bbdea64a9f40233d2a4262948dd10.tar.bz2 |
* generic/tkEntry.c (DestroyEntry): used Tcl_EventuallyFree
instead of ckfree for entryPtr to prevent FMRs. [Bug #413904]
FossilOrigin-Name: 615fc8509e95ebe4ac83c04c558a7a03ffd37364
Diffstat (limited to 'generic/tkEntry.c')
-rw-r--r-- | generic/tkEntry.c | 10 |
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); } /* |