From b38ab95e21d572cc0798fee0505c009a6b7587b6 Mon Sep 17 00:00:00 2001 From: Slack Coder Date: Thu, 20 Feb 2025 14:57:16 -0500 Subject: Fail on bad arguments for remaining commands --- SBO-Lib/lib/SBO/App.pm | 11 +++++++++-- SBO-Lib/lib/SBO/App/Remove.pm | 4 ++-- SBO-Lib/lib/SBO/App/Snap.pm | 4 ++-- 3 files changed, 13 insertions(+), 6 deletions(-) (limited to 'SBO-Lib/lib/SBO') diff --git a/SBO-Lib/lib/SBO/App.pm b/SBO-Lib/lib/SBO/App.pm index d8de5c6..d06c2f2 100644 --- a/SBO-Lib/lib/SBO/App.pm +++ b/SBO-Lib/lib/SBO/App.pm @@ -17,10 +17,17 @@ our $VERSION = '2.8.0'; sub new { my $class = shift; - my $self = $class->_parse_opts(@_); + my ($self, $res) = $class->_parse_opts(@_); $self->{fname} = basename( (caller(0))[1] ); - return bless $self, $class; + my $obj = bless $self, $class; + + if (! $res ) { + $obj->show_usage(); + exit 1; + } + + return $obj; } 1; diff --git a/SBO-Lib/lib/SBO/App/Remove.pm b/SBO-Lib/lib/SBO/App/Remove.pm index 7b0d27f..3128627 100644 --- a/SBO-Lib/lib/SBO/App/Remove.pm +++ b/SBO-Lib/lib/SBO/App/Remove.pm @@ -23,7 +23,7 @@ sub _parse_opts { my ($help, $vers, $non_int, $alwaysask); - GetOptionsFromArray( + my $res = GetOptionsFromArray( \@ARGS, 'help|h' => \$help, 'version|v' => \$vers, @@ -31,7 +31,7 @@ sub _parse_opts { 'alwaysask|a' => \$alwaysask, ); - return { help => $help, vers => $vers, non_int => $non_int, alwaysask => $alwaysask, args => \@ARGS, }; + return ({ help => $help, vers => $vers, non_int => $non_int, alwaysask => $alwaysask, args => \@ARGS, }, $res); } sub run { diff --git a/SBO-Lib/lib/SBO/App/Snap.pm b/SBO-Lib/lib/SBO/App/Snap.pm index 64487d7..d98bbc1 100644 --- a/SBO-Lib/lib/SBO/App/Snap.pm +++ b/SBO-Lib/lib/SBO/App/Snap.pm @@ -26,13 +26,13 @@ sub _parse_opts { my ($help, $vers); - GetOptionsFromArray( + my $res = GetOptionsFromArray( \@ARGS, 'help|h' => \$help, 'version|v' => \$vers, ); - return { help => $help, vers => $vers, args => \@ARGS, }; + return ({ help => $help, vers => $vers, args => \@ARGS, }, $res); } sub show_usage { -- cgit v1.2.3