aboutsummaryrefslogtreecommitdiff
path: root/sboupgrade
diff options
context:
space:
mode:
authorJ Pipkin <j@dawnrazor.net>2013-01-12 07:14:20 -0600
committerJ Pipkin <j@dawnrazor.net>2013-01-12 07:14:20 -0600
commit32abf3c7e9183cfe79019c748e588496722f7426 (patch)
tree7d9cd861e15595abebdda688fb6066e82febba62 /sboupgrade
parentb2a26f795d32e398bfc3dbfc13882419bd3ba929 (diff)
parentf177c4e5c4311e696373c77e593df452c7602d13 (diff)
downloadsbotools2-32abf3c7e9183cfe79019c748e588496722f7426.tar.xz
Merge branch 'exit_ask', fixes #41, fixes #37
Diffstat (limited to 'sboupgrade')
-rwxr-xr-xsboupgrade15
1 files changed, 12 insertions, 3 deletions
diff --git a/sboupgrade b/sboupgrade
index b38b456..8c5b283 100755
--- a/sboupgrade
+++ b/sboupgrade
@@ -192,7 +192,11 @@ unless ($force) {
my (@temp_queue, %commands, %options);
FIRST: for my $sbo (@$upgrade_queue) {
unless ($non_int) {
- my ($cmds, $opts) = user_prompt($sbo, $locations{$sbo});
+ my ($cmds, $opts, $exit) = user_prompt($sbo, $locations{$sbo});
+ if ($exit) {
+ warn "Unable to open README for $sbo.\n";
+ exit $exit;
+ }
if ($cmds) {
next FIRST if $cmds eq 'N';
}
@@ -213,7 +217,7 @@ unless ($non_int) {
exit 0 unless <STDIN> =~ /^[Yy\n]/;
}
-my $failures = process_sbos(
+my ($failures, $exit) = process_sbos(
TODO => $upgrade_queue,
CMDS => \%commands,
OPTS => \%options,
@@ -222,7 +226,12 @@ my $failures = process_sbos(
NOINSTALL => $no_install,
NOCLEAN => $noclean,
DISTCLEAN => $distclean,
+ NON_INT => $non_int,
);
print_failures($failures);
-exit keys %$failures > 0 ? 1 : 0;
+if ($exit) {
+ exit $exit;
+} else {
+ exit 0;
+}