From 7f0cf33940b175c4f08327684cde0adf6bfbb77e Mon Sep 17 00:00:00 2001 From: Thierry Vignaud Date: Thu, 14 Aug 2008 13:12:53 +0000 Subject: (cancel_n_quit) notify callers when installation is canceled (#40358) --- NEWS | 2 ++ gurpmi | 6 +++--- gurpmi.pm | 7 ++++++- 3 files changed, 11 insertions(+), 4 deletions(-) diff --git a/NEWS b/NEWS index 4d520db1..3f06f86d 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,5 @@ +- gurpmi + o notify callers when installation is canceled (#40358) - urpmi o fix displaying "files are missing" (regression introduced in 5.6) o fix --parallel --auto-select when one box is up-to-date but not the others (#41924) diff --git a/gurpmi b/gurpmi index 6a7899bd..d59c4d1b 100755 --- a/gurpmi +++ b/gurpmi @@ -28,7 +28,7 @@ Gtk2->init; $mainw = Gtk2::Window->new('toplevel'); $mainw->set_border_width(3); $mainw->set_title(N("RPM installation")); -$mainw->signal_connect(destroy => \&quit); +$mainw->signal_connect(destroy => \&cancel_n_quit); $mainw->set_position('center'); $mainw->set_modal(0); $mainbox = Gtk2::VBox->new(0, 5); @@ -43,7 +43,7 @@ foreach (@all_rpms) { unless (-e $_) { $mainbox->pack_start(new_label(N("Error: unable to find file %s, will cancel operation", $_)), 1, 1, 0); my $abort_button = Gtk2::Button->new(but(N("_Ok"))); - $abort_button->signal_connect(clicked => sub { quit(); exit 1 }); + $abort_button->signal_connect(clicked => sub { cancel_n_quit(); exit 1 }); add_button_box($mainbox, $abort_button); $mainw->show_all; Gtk2->main; @@ -118,7 +118,7 @@ Proceed?", all_descriptions(@all_rpms)) $file_dialog->cancel_button->signal_connect(clicked => \&quit); $file_dialog->show; }); - $ccel_button->signal_connect(clicked => \&quit); + $ccel_button->signal_connect(clicked => \&cancel_n_quit); add_button_box($mainbox, grep { defined $_ } $inst_button, $save_button, $ccel_button); } diff --git a/gurpmi.pm b/gurpmi.pm index b5bb20cd..e5e65379 100644 --- a/gurpmi.pm +++ b/gurpmi.pm @@ -31,7 +31,7 @@ URPM::bind_rpm_textdomain_codeset(); use Exporter; our @ISA = qw(Exporter); -our @EXPORT = qw(create_scrolled_window fatal but quit add_button_box new_label N); +our @EXPORT = qw(create_scrolled_window fatal but cancel_n_quit quit add_button_box new_label N); urpm::select::add_packages_to_priority_upgrade_list('gurpmi'); @@ -105,6 +105,11 @@ sub but ($) { " $_[0] " } sub quit () { Gtk2->main_quit } +sub cancel_n_quit () { + Gtk2->main_quit; + exit(1); +} + sub add_button_box { my ($vbox, @buttons) = @_; my $hbox = Gtk2::HButtonBox->new; -- cgit v1.2.1