The program below gets for me
signal handler:
$VAR1 = bless( do{\(my $o = 137867656)}, 'Gtk2::TreePath' );
0
mainline:
$VAR1 = bless( do{\(my $o = 137867656)}, 'Gtk2::TreePath' );
GLib-ERROR **: /tmp/buildd/glib2.0-2.16.4/glib/gmem.c:156: failed to allocate
1657472160 bytes at foo.pl line 21.
Aborted
Is the treepath allowed to be kept and used later outside the signal
handler? I know iters have bizarre lifespan rules, but I thought
treepaths were ok (or as ok as anything in the path/iter/model debacle
can be said to be ok! :-).
use strict;
use warnings;
use Gtk2 '-init';
use Data::Dumper;
my $store = Gtk2::ListStore->new ('Glib::String');
my $global_path;
$store->signal_connect (row_changed => sub {
my ($concat, $path, $iter) = @_;
$global_path = $path;
print "signal handler:\n";
print " ",Dumper($global_path);
print " ",$global_path->to_string,"\n";
});
$store->append;
$store->set ($store->get_iter_first, 0 => 'one');
print "mainline:\n";
print " ",Dumper($global_path);
print " ",$global_path->to_string,"\n";
exit 0;
_______________________________________________
gtk-perl-list mailing list
[email protected]
http://mail.gnome.org/mailman/listinfo/gtk-perl-list