diff options
Diffstat (limited to 'test/Ivy::exit2-bug.pl')
-rw-r--r-- | test/Ivy::exit2-bug.pl | 36 |
1 files changed, 36 insertions, 0 deletions
diff --git a/test/Ivy::exit2-bug.pl b/test/Ivy::exit2-bug.pl new file mode 100644 index 0000000..46466d1 --- /dev/null +++ b/test/Ivy::exit2-bug.pl @@ -0,0 +1,36 @@ +#!/usr/bin/perl -w + +#use lib '/home/mertz/CODE/lib/ivy-perl'; +#BEGIN { print "INC = @INC\n";} +use strict; + +use Tk; +use Ivy; +print "Ivy::exit2-bug.pl INC = @INC\n"; +Ivy->init('-loopMode' => 'TK', '-appName' => 'toto'); +my $ivy = Ivy->new(); +$SIG{HUP} = $SIG{TERM} = $SIG{QUIT} = $SIG{INT} = $SIG{STOP} = $SIG{KILL} = 'quit2'; + +my $mw = MainWindow->new; +my $b = $mw->Button(-text => 'Un bouton', -command => \&quit)->pack(); +$ivy->start; +MainLoop; + +sub quit { + #$b->destroy; + #$mw->destroy; + print "Avant Ivy::exit\n"; + $ivy->exit(); # fait un segmentation fault si Ctrl+C et qu'il est seul sur le bus! + print "Apres Ivy::exit\n"; +} + +sub quit2 { # fait un segmentation fault si Ctrl+C et qu'il est seul sur le bus! + exit (); +} + + +sub quit3 { + Ivy::exit(); # fait un segmentation fault si Ctrl+C +} + +1; |