# Starting in Tk 8.0, the destroy command stopped returning an error when # given a non-existent window as an argument. package require Tk if {[package vcompare [package provide Tk] 8] < 0} { rename destroy Tk4.2_destroy proc destroy {args} { catch {uplevel Tk4.2_destroy $args} } }