diff options
author | dgp <dgp@users.sourceforge.net> | 2013-09-07 22:19:49 (GMT) |
---|---|---|
committer | dgp <dgp@users.sourceforge.net> | 2013-09-07 22:19:49 (GMT) |
commit | 22ba33d2b43194f8bc84aff36d0ed84a710cd8ff (patch) | |
tree | a56b6f6a4b8b6550b9a7165580aa865e65931752 /library/tm.tcl | |
parent | 133768540d48de8f9bf0638fd9983178588bd18a (diff) | |
parent | 53c609c3aa4042d00194dc6d3d2bea553ad9d605 (diff) | |
download | tcl-22ba33d2b43194f8bc84aff36d0ed84a710cd8ff.zip tcl-22ba33d2b43194f8bc84aff36d0ed84a710cd8ff.tar.gz tcl-22ba33d2b43194f8bc84aff36d0ed84a710cd8ff.tar.bz2 |
[86ceb4e2b6] Improve reaction when multiple *tm files purport to offer the
same version of the same package. Prefer the file that comes first on the
tm path. Makes TCL*_TM_PATH variables more useful. Thanks to Gustaf Neumann
for the suggestion.
[a16752c252] Revise (partially revert) bug fix to stop crashes in buggy
tclcompiler.
Diffstat (limited to 'library/tm.tcl')
-rw-r--r-- | library/tm.tcl | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/library/tm.tcl b/library/tm.tcl index d2af4f5..55efda6 100644 --- a/library/tm.tcl +++ b/library/tm.tcl @@ -238,6 +238,15 @@ proc ::tcl::tm::UnknownHandler {original name args} { continue } + if {[package ifneeded $pkgname $pkgversion] ne {}} { + # There's already a provide script registered for + # this version of this package. Since all units of + # code claiming to be the same version of the same + # package ought to be identical, just stick with + # the one we already have. + continue + } + # We have found a candidate, generate a "provide script" # for it, and remember it. Note that we are using ::list # to do this; locally [list] means something else without |