Tk Source Code

Check-in [225542ce]
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Fix for crash in deleted toplevels when not removed from Cocoa window menu; thanks to Marc Culler for patch
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | core-8-5-branch
Files: files | file ages | folders
SHA1: 225542ceae149013c3a6f5594db9f9dae3ab6a74
User & Date: kevin_walzer 2015-03-06 02:45:13
Context
2015-03-06
15:28
merge release check-in: 7747eb1f user: dgp tags: core-8-5-branch
12:51
merge mark check-in: b16d00d5 user: dgp tags: trunk
12:48
merge 8.5 check-in: c343244c user: dgp tags: core-8-5-18-rc
02:45
Fix for crash in deleted toplevels when not removed from Cocoa window menu; thanks to Marc Culler for patch check-in: 225542ce user: kevin_walzer tags: core-8-5-branch
2015-03-05
15:57
Fix for keyboard modifier events, thanks to Trevor Williams for patch check-in: 1099ec55 user: kevin_walzer tags: core-8-5-branch
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to macosx/tkMacOSXWm.c.

784
785
786
787
788
789
790

791
792
793
794
795
796
797
     * for embedded windows, they don't go in the window list, and they do not
     * own their portPtr's.
     */

    NSWindow *window = wmPtr->window;
    if (window && !Tk_IsEmbedded(winPtr) ) {
	[[window parentWindow] removeChildWindow:window];

	[window close];
	TkMacOSXUnregisterMacWindow(window);
	if (winPtr->window) {
	    ((MacDrawable *)winPtr->window)->view = nil;
	}
	TkMacOSXMakeCollectableAndRelease(wmPtr->window);
    }






>







784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
     * for embedded windows, they don't go in the window list, and they do not
     * own their portPtr's.
     */

    NSWindow *window = wmPtr->window;
    if (window && !Tk_IsEmbedded(winPtr) ) {
	[[window parentWindow] removeChildWindow:window];
	[window setExcludedFromWindowsMenu:YES];
	[window close];
	TkMacOSXUnregisterMacWindow(window);
	if (winPtr->window) {
	    ((MacDrawable *)winPtr->window)->view = nil;
	}
	TkMacOSXMakeCollectableAndRelease(wmPtr->window);
    }