POE-Loop-Tk
view release on metacpan or search on metacpan
lib/POE/Loop/TkCommon.pm view on Meta::CPAN
# Tk traps errors in an effort to survive them. However, since POE
# does not, this leaves us in a strange, inconsistent state. Here we
# re-trap the errors and rethrow them as UIDESTROY.
sub Tk::Error {
my $window = shift;
my $error = shift;
if (Tk::Exists($window)) {
my $grab = $window->grab('current');
$grab->Unbusy if defined $grab;
}
chomp($error);
POE::Kernel::_warn "Tk::Error: $error\n " . join("\n ",@_)."\n";
if ($poe_kernel->_data_ses_count()) {
$poe_kernel->_dispatch_event(
$poe_kernel, $poe_kernel,
EN_SIGNAL, ET_SIGNAL, [ 'UIDESTROY' ],
__FILE__, __LINE__, undef, time(), -__LINE__
);
( run in 0.339 second using v1.01-cache-2.11-cpan-87723dcf8b7 )