From 3b9b9b84cb63eda9503c1ccf4226dab742ea654c Mon Sep 17 00:00:00 2001 From: Thierry Vignaud Date: Mon, 27 Nov 2006 13:28:24 +0000 Subject: (get_info) defensive programming (#26099) --- rpmdrake | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/rpmdrake b/rpmdrake index 21f7bdb1..655d5072 100755 --- a/rpmdrake +++ b/rpmdrake @@ -1106,7 +1106,12 @@ or you already installed all of them.")); exists $pkgs->{$key} or return [ [ N("Description not available for this package\n") ] ]; exists $pkgs->{$key}{description} && exists $pkgs->{$key}{files} or slow_func($tree->window, sub { extract_header($pkgs->{$key}, $urpm) }); - format_pkg_simplifiedinfo($pkgs, $key, $urpm, $descriptions); + my $s; + eval { $s = format_pkg_simplifiedinfo($pkgs, $key, $urpm, $descriptions) }; + if (my $err = $@) { + $s = N("A fatal error occurred: %s.", $err); + } + $s; }, check_interactive_to_toggle => sub { 1 }, grep_allowed_to_toggle => sub { @_ }, -- cgit v1.2.1