summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog11
-rw-r--r--ChangeLog.20046
-rw-r--r--changes8
-rw-r--r--generic/tkFocus.c12
4 files changed, 25 insertions, 12 deletions
diff --git a/ChangeLog b/ChangeLog
index 7af182b..e39ebd1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2012-11-07 Donal K. Fellows <dkf@users.sf.net>
+
+ * generic/tkFocus.c (TkSetFocusWin): [Bug 3574708]: Move window
+ liveness into this function from caller sites to ensure that there are
+ no paths where things can trip up on setting the focus to a partially
+ dead window.
+
2012-10-24 Don Porter <dgp@users.sourceforge.net>
* macosx/tkMacOSXWm.c: [Bug 3574893] Add overlooked toplevel ref
@@ -1464,7 +1471,7 @@
* unix/tkUnixSelect.c (SelCvtFromX32, SelCvtFromX8): Make the
incremental transfer of binary selections work get deserialized
- correctly. Thanks to Emiliano Gavilan for detecting.
+ correctly. Thanks to Emiliano Gavilán for detecting.
2009-07-15 Donal K. Fellows <dkf@users.sf.net>
@@ -2172,7 +2179,7 @@
* changes: Updates for 8.5.2 release.
* unix/tkUnixCursor.c: Stop crash in [. configure -cursor] on X11.
- Thanks to emiliano gavilán. [Bug 1922466]
+ Thanks to Emiliano Gavilán. [Bug 1922466]
2008-03-26 Joe English <jenglish@users.sourceforge.net>
diff --git a/ChangeLog.2004 b/ChangeLog.2004
index 5a02238..bf86629 100644
--- a/ChangeLog.2004
+++ b/ChangeLog.2004
@@ -368,7 +368,7 @@
an .xbm extension so Windows users won't get confused when wandering
around the Tcl source tree. [Bug 733835]
-2004-10-11 Miguel Bañon <bagnonm@users.sourceforge.net>
+2004-10-11 Miguel Bañon <bagnonm@users.sourceforge.net>
* library/msgs/sv.msg: Swedish message catalog from Mats Bengtsson.
@@ -1087,7 +1087,7 @@
2004-04-21 Benjamin Riefenstahl <Benjamin.Riefenstahl@epost.de>
Mac OS X: Fix several problems with Icelandic (and Faroese) keyboards
- reported by Jérôme Gagnon-Voyer <gagnonje5000<at>mac<dot>com> on
+ reported by Jérôme Gagnon-Voyer <gagnonje5000<at>mac<dot>com> on
tcl-mac on 2004-03-22.
* macosx/tkMacOSXKeyEvent.c (KLSInit): Add.
@@ -2782,7 +2782,7 @@
* doc/text.n: Fixed markup errors.
-2003-05-28 Miguel Bañón <bagnonm@users.sourceforge.net>
+2003-05-28 Miguel Bañón <bagnonm@users.sourceforge.net>
* library/msgs/cs.msg: Updated messages from wohnivec@iol.cz
diff --git a/changes b/changes
index 9f08bb5..6864ebe 100644
--- a/changes
+++ b/changes
@@ -3731,7 +3731,7 @@ broken on the Mac and Windows. Added the ability to set the title of a
menu when it gets torn off and override Tk's automatic generation of
the title. On the Macintosh, whenever a menu
label contains three dots in a row "...", the menu will instead
-display the elipses character 'É'. (SRP)
+display the elipses character '…'. (SRP)
3/27/97 (bug fixes) When a menu had an error executing a postcommand,
the error information was getting lost. On Windows, a set of
@@ -6492,7 +6492,7 @@ Several documentation and release notes improvements
2008-03-21 (bug fix)[1863007,1920030] Export Ttk stubs table (english)
-2008-03-26 (bug fix)[1922466] crash in [. configure -cursor] (gavilán)
+2008-03-26 (bug fix)[1922466] crash in [. configure -cursor] (gavilán)
2008-03-27 (platform support)[1921166] Solaris 64bit build fixes (steffen)
@@ -6678,7 +6678,7 @@ in screen distances, reducing precision loss (ferrieux)
2009-12-06 (bug fix)[2548661] crash in GetFontFamilyName (riefenstahl)
-2009-12-06 (bug fix)[2864685] Compiz menu item animation (gavilan,thoyts)
+2009-12-06 (bug fix)[2864685] Compiz menu item animation (gavilán,thoyts)
2009-12-09 (bug fix)[2902573] Update Safe Tk to new Safe Base (kurpies)
@@ -6852,7 +6852,7 @@ Many revisions to better support a Cygwin environment (nijtmans)
2012-08-24 (bug fix)[3558535] file dialog filtering (fellows)
-2012-08-25 (bug fix)[3554026,3561016] crash with tearoff menus (gavilan)
+2012-08-25 (bug fix)[3554026,3561016] crash with tearoff menus (gavilán)
2012-08-28 (bug fix)[3562426] Context menu goes off screen (nijtmans)
diff --git a/generic/tkFocus.c b/generic/tkFocus.c
index 4814c17..85093ee 100644
--- a/generic/tkFocus.c
+++ b/generic/tkFocus.c
@@ -160,9 +160,7 @@ Tk_FocusObjCmd(
if (newPtr == NULL) {
return TCL_ERROR;
}
- if (!(newPtr->flags & TK_ALREADY_DEAD)) {
- TkSetFocusWin(newPtr, 0);
- }
+ TkSetFocusWin(newPtr, 0);
return TCL_OK;
}
}
@@ -552,6 +550,14 @@ TkSetFocusWin(
TkWindow *topLevelPtr;
int allMapped, serial;
+ /*
+ * Don't set focus if window is already dead. [Bug 3574708]
+ */
+
+ if (winPtr->flags & TK_ALREADY_DEAD) {
+ return;
+ }
+
displayFocusPtr = FindDisplayFocusInfo(winPtr->mainPtr, winPtr->dispPtr);
/*