summaryrefslogtreecommitdiffstats
path: root/macosx
diff options
context:
space:
mode:
authormarc_culler <marc.culler@gmail.com>2020-10-20 20:15:00 (GMT)
committermarc_culler <marc.culler@gmail.com>2020-10-20 20:15:00 (GMT)
commit9c472e72196238d8550cab9eeeb10bf9ed74be31 (patch)
treee49d916fe830294d7203d1504223cdc46f87a2d9 /macosx
parent4c940e28df4d5740b0ab2904ed4c673e5678ddf0 (diff)
downloadtk-9c472e72196238d8550cab9eeeb10bf9ed74be31.zip
tk-9c472e72196238d8550cab9eeeb10bf9ed74be31.tar.gz
tk-9c472e72196238d8550cab9eeeb10bf9ed74be31.tar.bz2
Make Tcl_Finalize run when a launched app is terminated with command-Q
Diffstat (limited to 'macosx')
-rw-r--r--macosx/tkMacOSXHLEvents.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/macosx/tkMacOSXHLEvents.c b/macosx/tkMacOSXHLEvents.c
index 615653d..5055f38 100644
--- a/macosx/tkMacOSXHLEvents.c
+++ b/macosx/tkMacOSXHLEvents.c
@@ -570,13 +570,18 @@ TkMacOSXDoHLEvent(
static int
ReallyKillMe(
Tcl_Event *eventPtr,
- int flags)
+ TCL_UNUSED(int))
{
Tcl_Interp *interp = ((KillEvent *) eventPtr)->interp;
int quit = Tcl_FindCommand(interp, "::tk::mac::Quit", NULL, 0)!=NULL;
- int code = Tcl_EvalEx(interp, quit ? "::tk::mac::Quit" : "exit", -1, TCL_EVAL_GLOBAL);
+ if (!quit) {
+ Tcl_Exit(0);
+ }
+
+ int code = Tcl_EvalEx(interp, "::tk::mac::Quit", -1, TCL_EVAL_GLOBAL);
if (code != TCL_OK) {
+
/*
* Should be never reached...
*/