From 9c9af976ae17ba173df40300467589554956e8f2 Mon Sep 17 00:00:00 2001 From: kjnash Date: Mon, 13 Jul 2020 12:09:47 +0000 Subject: Bugfix in library/safe.tcl - when auto_reset, also reload pkgIndex.tcl data; pass tests safe-9.10, safe-9.11 --- library/safe.tcl | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/library/safe.tcl b/library/safe.tcl index 7ed6b94..deefa33 100644 --- a/library/safe.tcl +++ b/library/safe.tcl @@ -225,6 +225,14 @@ proc ::safe::interpConfigure {args} { } else { Log $slave "successful auto_reset" NOTICE } + # Wherever possible, refresh package data. + # - Ideally [package ifneeded $pkg $ver {}] would clear the + # stale data from the interpreter, but instead it sets a + # nonsense empty script. + # - We cannot purge stale package data, but we can overwrite + # it where we have fresh data. Any remaining stale data will + # do no harm but the error messages may be cryptic. + ::interp eval $slave [list catch {package require NOEXIST}] } } } -- cgit v0.12