summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--ChangeLog8
-rw-r--r--library/tm.tcl7
2 files changed, 13 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 814edac..5fd35be 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,11 @@
+2008-03-18 Andreas Kupries <andreask@activestate.com>
+
+ * library/tm.tcl (::tcl::tm::Defaults): Modified handling of
+ environment variables. See [Bug 1914604]. Solution slightly
+ different than proposed in the report. Using the underscored
+ form TCLX_y_TM_PATH even if TCLX.y_TM_PATH exists. Also using a
+ loop to cut prevent code replication.
+
2008-03-16 Donal K. Fellows <dkf@users.sf.net>
* generic/tclCompCmds.c (TclCompileDictForCmd): Correct the handling
diff --git a/library/tm.tcl b/library/tm.tcl
index 8fac14a..90692d2 100644
--- a/library/tm.tcl
+++ b/library/tm.tcl
@@ -321,8 +321,11 @@ proc ::tcl::tm::Defaults {} {
set sep ":"
}
for {set n $minor} {$n >= 0} {incr n -1} {
- set ev TCL${major}.${n}_TM_PATH
- if {[info exists env($ev)]} {
+ foreach ev [list \
+ TCL${major}.${n}_TM_PATH \
+ TCL${major}_${n}_TM_PATH \
+ ] {
+ if {![info exists env($ev)]} continue
foreach p [split $env($ev) $sep] {
path add $p
}