From d54c1557c01a38d6f45e9c9c20bae831c487f173 Mon Sep 17 00:00:00 2001 From: Olivier Blin Date: Wed, 24 Aug 2005 15:16:01 +0000 Subject: do not crash in create_treeview_tree with allow_empty_list and really empty list (#17718) --- perl-install/interactive/gtk.pm | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) (limited to 'perl-install/interactive') diff --git a/perl-install/interactive/gtk.pm b/perl-install/interactive/gtk.pm index 045b7e4f1..1242b6387 100644 --- a/perl-install/interactive/gtk.pm +++ b/perl-install/interactive/gtk.pm @@ -306,16 +306,18 @@ sub create_treeview_tree { }); $tree, sub { - my $v = may_apply($e->{format}, $_[0]); - my $i = find_index { $v eq $_ } @{$e->{formatted_list}}; + my $v = may_apply($e->{format}, $_[0]); + eval { + my $i = find_index { $v eq $_ } @{$e->{formatted_list}}; - my ($model, $iter) = $tree->get_selection->get_selected; + my ($model, $iter) = $tree->get_selection->get_selected; - my $new_path_str = $tree_model->{path_str_list}[$i]; - my $old_path_str = $model && $tree_model->get_path_str($iter); - - $select->($new_path_str) if $new_path_str ne $old_path_str; - undef $iter if ref $iter; + my $new_path_str = $tree_model->{path_str_list}[$i]; + my $old_path_str = $model && $tree_model->get_path_str($iter); + + $select->($new_path_str) if $new_path_str ne $old_path_str; + undef $iter if ref $iter; + }; }; } -- cgit v1.2.1