Share

Tcl

File Release Notes and Changelog

Release Name: 8.4.17

Notes:
Tcl/Tk 8.4.17 Release Announcement
January 4, 2008

The Tcl Core Team is pleased to announce the 8.4.17 releases of the Tcl
dynamic language and the Tk toolkit.  This is the seventeenth patch release
of Tcl/Tk 8.4.  More details can be found below.  We would like to
express our gratitude to all those who submit bug reports and patches.
This information is invaluable in enabling us to identify and eliminate
problems in the core.

Where to get the new releases:
------------------------------

Tcl/Tk 8.4.17 sources are freely available as open source from the
Tcl Developer Xchange web site at:

        http://www.tcl.tk/software/tcltk/8.4.html

This web page also contains additional information about the releases,
including new features and notes about installing and compiling the
releases.  Sources are always available from the Tcl SourceForge
project's file distribution area:

        http://sourceforge.net/project/showfiles.php?group_id=10894

Binaries for most major platforms are available from:

        http://www.activestate.com/Tcl

For additional information:
---------------------------

Please visit the Tcl Developer Xchange web site:

        http://www.tcl.tk/

This site contains a variety of information about Tcl/Tk in general, the
core Tcl and Tk distributions, Tcl development tools, and much more.

Summary of Changes since Tcl/Tk 8.4.16:
--------------------------------------

The following were the main changes in Tcl/Tk 8.4.17.  A complete list
can be found in the changes file at the root of the source tree.  The
more complete ChangeLog is also included with each source release.  This
is a patch release, so it primarily included bug fixes and corrections
to erratic behavior.  Below are only the most notable changes.

  * New Hungarian message catalog for Tk.

  * Support for 64-bit X11 on Mac OS X systems.

  * Fixed crash in [lsearch -exact -integer].

  * Fixed [tk_getOpenFile] crash on Mac OS X Leopard.

  * Fixed crash, hang, and inefficiencies in regexp engine.

  * Fixed open mode "a+"

  * Fixed crash in [photo put] with PPM data.

  * Fixed possible crash in [place] geometery manager.

--
Tcl Core Team and Maintainers
Don Porter, Tcl Core Release Manager


Changes: **** TCL **** 2007-12-31 Don Porter <dgp@users.sourceforge.net> *** 8.4.17 TAGGED FOR RELEASE *** * changes: updates for 8.4.17 release. * doc/filename.n: Typo 2007-12-18 Donal K. Fellows <donal.k.fellows@manchester.ac.uk> * generic/regguts.h, generic/regc_color.c, generic/regc_nfa.c: Fixes for problems created when processing regular expressions that generate very large automata. An enormous number of thanks to Will Drewry <wad@google.com>, Tavis Ormandy <taviso@google.com>, and Tom Lane <tgl@sss.pgh.pa.us> from the Postgresql crowd for their help in tracking these problems down. [Bug 1810264] 2007-12-14 Jeff Hobbs <jeffh@ActiveState.com> * win/README: updated notes 2007-12-14 Zoran Vasiljevic <vasiljevic@users.sourceforge.net> * unix/tclUnixCompat.c (TclpGetHostByName): Really applied the change noted on 2007-11-13 by dkf below. 2007-12-13 Jeff Hobbs <jeffh@ActiveState.com> * generic/tclIOUtil.c (TclGetOpenMode): Only set the O_APPEND flag * tests/ioUtil.test (ioUtil-4.1): on a channel for the 'a' mode and not for 'a+'. [Bug 1773127] (backport from HEAD) 2007-12-05 Donal K. Fellows <donal.k.fellows@man.ac.uk> * generic/tclCmdIL.c (Tcl_LsearchObjCmd): Prevent shimmering crash when -exact and -integer/-real are mixed. [Bug 1844789] 2007-11-28 Jeff Hobbs <jeffh@ActiveState.com> * win/tclWinSock.c (Tcl_GetHostName): update to previous fix to set hostname length appropriately, clean up check overall. 2007-11-27 Don Porter <dgp@users.sourceforge.net> * win/tclWinSock.c: Add missing encoding conversion of the [info hostname] value from the system encoding to Tcl's internal encoding. This is important now that ICANN no longer limits host names to ASCII. [Bug 1823552] 2007-11-26 Zoran Vasiljevic <vasiljevic@users.sourceforge.net> * generic/tclThread.c: Back-port locking changes from Tcl8.5 in Tcl_Mutex/ConditionFinlize. Now we properly master-lock the finalization of sync primitives. 2007-11-15 Don Porter <dgp@users.sourceforge.net> * generic/regc_nfa.c: Fixed infinite loop in the regexp compiler * generic/regcomp.c: [Bug 1810038]. Corrected looping logic in * tests/regexp.test: fixempties() to avoid wasting time walking a list of dead states [Bug 1832612]. Convert optst() from expensive no-op to a cheap no-op. Improve newline usage in debug output. 2007-11-13 Donal K. Fellows <donal.k.fellows@man.ac.uk> * unix/tclUnixCompat.c (TclpGetHostByName): The six-argument form of getaddressbyname_r() uses the fifth argument to indicate whether the lookup succeeded or not on at least one platform. [Bug 1618235] 2007-10-30 Donal K. Fellows <donal.k.fellows@man.ac.uk> * generic/regc_lex.c (lexescape): Ensure that backreference numbers can't overflow a signed int in a way that breaks things. [Bug 1810264] 2007-10-15 Miguel Sofer <msofer@users.sf.net> * generic/tclParse.c (Tcl_ParseBraces): fix for possible read after the end of buffer, [Bug 1813528] (Joe Mistachkin). 2007-10-03 Miguel Sofer <msofer@users.sf.net> * generic/tclObj.c (Tcl_FindCommandFromObj): fix finding a deleted command; cannot trigger this from Tcl itself, but crash reported on xotcl. This check is new to 8.4 but exists in 8.5, so this is a backport or something. Thanks Gustaf Neumann. 2007-10-02 Jeff Hobbs <jeffh@ActiveState.com> * generic/tcl.h (Tcl_DecrRefCount): Update change from 2006-05-29 to make macro more warning-robust in unbraced if code. 2007-10-02 Don Porter <dgp@users.sourceforge.net> * README: Bump version number to 8.4.17 * generic/tcl.h: * tools/tcl.wse.in: * unix/configure.in: * unix/tcl.spec: * win/README.binary: * win/configure.in: * unix/configure: autoconf-2.13 * win/configure: **** TK **** 2007-12-31 Don Porter <dgp@users.sourceforge.net> *** 8.4.17 TAGGED FOR RELEASE *** * changes: updates for 8.4.17 release. * unix/configure.in: Add "hu" to LOCALES. * unix/configure: autoconf-2.13 2007-12-18 Daniel Steffen <das@users.sourceforge.net> * macosx/tkMacOSXWm.c (ApplyMasterOverrideChanges): Revert 2007-10-26 change to window class of transient toplevels that are not also overrideredirect. [Bug 1845899] * macosx/tkMacOSXWm.c (ApplyMasterOverrideChanges): Implement more * macosx/tkMacOSXMouseEvent.c (BringWindowForward): X11-like transient * macosx/tkMacOSXSubwindows.c (XDestroyWindow): behaviour by adding transient windows to a window group owned by the master window, this ensures transients always remain in front of and are collapsed with the master; bring master to front when selecting transient windows; restore default window group of transients if master destroyed. [Bug 1845899] * macosx/tkMacOSXPrivate.h: fix Panther build. 2007-12-13 Jeff Hobbs <jeffh@ActiveState.com> * generic/tkMenubutton.c (ConfigureMenuButton): trace the -textvariable even if an image exists as it may use -compound. 2007-12-12 Jeff Hobbs <jeffh@ActiveState.com> * generic/tkText.c (DeleteChars, TextEditCmd, updateDirtyFlag): * tests/text.test (text-25.10.1,25.11.[12]): Don't require [update idle] to trigger Modified event [Bug 1809538] Modified virtual event should only fire on state change [Bug 1799782] Make sure we delete chars before triggering <<Modified>> [Bug 1737288] 2007-12-05 Jeff Hobbs <jeffh@ActiveState.com> * win/tkWinInt.h: remove CS_CLASSDC (not recommended for any apps now) * win/tkWinX.c: and simplify WNDCLASS to one style. * win/tkWinWm.c: Reduce wrapper update for exStyle to toolwindow change only and set WS_EX_LAYERED as sticky (once set on a window, do not remove it) to reduce alpha transition flicker. * win/tkWinDraw.c: Applied [Patch 1723362] for transparent bitmaps. 2007-11-26 Kevin Kenny <kennykb@acm.org> Backport from HEAD of [Bug #1822391]: * generic/tkImgPPM.c (StringReadPPM): Corrected a comparison whose sense was reversed that resulted in reading beyond the end of the input buffer on malformed PPM data. [Bug #1822391] * tests/imgPPM.test (imgPPM-4.1): Added test case that exercises [Bug #1822391]. 2007-11-09 Daniel Steffen <das@users.sourceforge.net> Backport from HEAD of Aqua changes from 2007-10-12 to 2007-11-09: * macosx/tkMacOSXCarbonEvents.c (InstallStandardApplicationEventHandler): on Mac OS X Leopard, replace the 2005-11-27 approach of installing the standard application handler by calling RAEL and immediately longjmping out of it from an event handler, as that now leads to crashes in -[NSView unlockFocus] whenever HIToolbox uses Cocoa in Leopard (Help menu, Nav Services, Color Picker). Instead call InstallStandardEventHandler() on the application and menubar event targets, as Leopard ISEH finally handles these correctly. Unfortunately need a HIToolbox-internal SPI to retrieve the menubar event target, no public API appears have that functionality. * macosx/tkMacOSXDebug.c: make TkMacOSXInitNamedDebugSymbol() * macosx/tkMacOSXDebug.h: available outside of debug builds as the new Leopard ISAEH needs it. * macosx/tkMacOSXButton.c: replace HiliteControl() by modern API * macosx/tkMacOSXMenubutton.c: for activation and enabling; distinguish inactive and disabled look&feel; correct activation handling to match that of container toplevel. * macosx/tkMacOSXMenubutton.c: correct size computation of bevelbutton variant to match that of buttons; fix crash with bitmap due to NULL GC; delay picParams setup until needed; formatting cleanup. [Bug 1824521] * library/menu.tcl: correct handling of menubutton "active" state on Aqua to match that of buttons. * macosx/tkMacOSXDefault.h: correct button & menubutton active foreground and background colors and menubutton border width. * macosx/tkMacOSXWindowEvent.c: handle kEventWindowExpanding carbon * macosx/tkMacOSXCarbonEvents.c: event instead of kEventWindowExpanded to ensure activate event arrives after window is remapped, also need to process all Tk events generated by remapping in the event handler to ensure children are remapped before activate event is processed. * macosx/tkMacOSXSubwindows.c: add pixmap size field to MacDrawable * macosx/tkMacOSXInt.h: struct; add flag for B&W pixmaps. * macosx/tkMacOSXDraw.c: * macosx/tkMacOSXEmbed.c: * macosx/tkMacOSXMenu.c: * macosx/tkMacOSXPrivate.h: correct Leopard HIToolboxVersionNumber. * macosx/tkMacOSXMenus.c: add "Run Widget Demo" menu item to the default Edit menu along with associated carbon event handler enabling the item only if demo files are installed; cleanup handling of "About" and "Source" menu items. * library/bgerror.tcl: fix background of detail text on Aqua. * library/console.tcl: sync aqua font size with HEAD. * library/demos/widget: Aqua GOOBE. * macosx/tkMacOSXEvent.c (TkMacOSXProcessCommandEvent): fix boolean arg * macosx/tkMacOSXColor.c (GetThemeColor): improve translation of RGB pixel values into RGBColor. * library/demos/widget: increase height of main window text widget to use more of the available vertical space. * macosx/tkMacOSXDraw.c: replace all (internal) use of QD region * macosx/tkMacOSXSubwindows.c: API by HIShape API, with conversion to * macosx/tkMacOSXWindowEvent.c: QD regions only when required by legacy * macosx/tkMacOSXPrivate.h: Carbon or Tk API. * macosx/tkMacOSXRegion.c: * macosx/tkMacOSXDebug.c: * macosx/tkMacOSXDebug.h: * macosx/tkMacOSXInt.h: replace MacDrawable's QD RgnHandles * macosx/tkMacOSXEmbed.c: clipRgn, aboveClipRgn & drawRgn by * macosx/tkMacOSXMenu.c: HIShapeRefs visRgn & aboveVisRgn and * macosx/tkMacOSXSubwindows.c: CGRect drawRect. * macosx/tkMacOSXWindowEvent.c: remove use of QD port vis rgn in window * macosx/tkMacOSXSubwindows.c: update rgn calculation, manually excise * macosx/tkMacOSXWm.c: growbox from toplevel clip rgn instead. * macosx/tkMacOSXDraw.c: replace use of QD port clip rgn by new * macosx/tkMacOSXPrivate.h: clipRgn fld in TkMacOSXDrawingContext; handle QD/CG drawing mismatches in XCopyArea, XCopyPlane and TkPutImage; cleanup/speedup CGContext setup in TkMacOSXSetupDrawingContext(). * macosx/tkMacOSXDraw.c: change TkMacOSXSetupDrawingContext() to * macosx/tkMacOSXEntry.c: return boolean indicating whether * macosx/tkMacOSXFont.c: drawing is allowed (and was setup) or * macosx/tkMacOSXMenu.c: not (e.g. when clipRgn is empty). * macosx/tkMacOSXSubwindows.c: signal that drawable is a pixmap via * macosx/tkMacOSXInt.h: new explicit TK_IS_PIXMAP flag instead of a NULL cligRgn field. * macosx/tkMacOSXRegion.c: add wrappers for missing/buggy HIShape * macosx/tkMacOSXPrivate.h: API, and private helpers to operate on HIShapeRefs & convert to/from TkRegion. * macosx/tkMacOSXRegion.c: add Tkp{Retain,Release}Region() API for * macosx/tkMacOSXInt.h: TkRegion. * xlib/xgc.c: factor out alloc/free of GC clip_mask; * macosx/tkMacOSXXStubs.c: manage clip rgn lifetime with new Tkp{Retain,Release}Region(). * macosx/tkMacOSXButton.c: delay picParams setup until needed. 2007-10-30 Jeff Hobbs <jeffh@ActiveState.com> * library/entry.tcl: don't error with Clear event. [Bug 1509288] 2007-10-26 Daniel Steffen <das@users.sourceforge.net> * macosx/tkMacOSXWm.c (ApplyMasterOverrideChanges): fix window class of transient toplevels that are not also overrideredirect. [Bug 1816252] * macosx/tkMacOSXDialog.c: sync with HEAD. * unix/configure.in (Darwin): add support for 64-bit X11. * unix/configure: autoconf-2.13 2007-10-25 Don Porter <dgp@users.sourceforge.net> * generic/tkPlace.c: Prevent segfault in place geometry manager. Thanks to Colin McDonald. [Bug 1818491] 2007-10-11 Donal K. Fellows <donal.k.fellows@man.ac.uk> * library/msgs/hu.msg: Added message catalog for Hungarian. [Patch 1800742] (rezso) 2007-10-11 Daniel Steffen <das@users.sourceforge.net> * macosx/tkMacOSXWm.c (TkMacOSXGrowToplevel): manually constrain resize limitBounds to maxBounds, works around SectRect() mis-feature (return zero rect if input rect has zero height/width). [Bug 1810818] 2007-10-02 Don Porter <dgp@users.sourceforge.net> * README: Bump version number to 8.4.17 * generic/tk.h: * unix/configure.in: Removed "es_ES" entry in LOCALES * unix/tk.spec: * win/configure.in: * unix/configure: autoconf-2.13 * win/configure: