summaryrefslogtreecommitdiff
path: root/lib/App/annex_review_unused.pm
diff options
context:
space:
mode:
authorSean Whitton <spwhitton@spwhitton.name>2020-02-08 00:14:10 -0700
committerSean Whitton <spwhitton@spwhitton.name>2020-02-08 00:14:10 -0700
commit2a1c7ef7c020dd3ed47ed18f28f3ce8f9dad9c79 (patch)
tree6ee6fbf4dca686721b29e92e8358eeef4290e89e /lib/App/annex_review_unused.pm
parent335ce93a4ae9c97ebdb22a3f0349796ef3654c3f (diff)
downloadp5-Git-Annex-2a1c7ef7c020dd3ed47ed18f28f3ce8f9dad9c79.tar.gz
option to populate @ARGV using an anonymous array
Now Perl code can call our App:: code and simulate command line arguments by passing an arrayref. Note that we can't just say local @ARGV = @_ if @_; because then we can't distinguish between the intent to simulate passing zero command line arguments and a request to look to @ARGV. Signed-off-by: Sean Whitton <spwhitton@spwhitton.name>
Diffstat (limited to 'lib/App/annex_review_unused.pm')
-rw-r--r--lib/App/annex_review_unused.pm3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/App/annex_review_unused.pm b/lib/App/annex_review_unused.pm
index d170601..d92b6d6 100644
--- a/lib/App/annex_review_unused.pm
+++ b/lib/App/annex_review_unused.pm
@@ -39,6 +39,9 @@ for that command.
=cut
sub main {
+ shift if $_[0] and ref $_[0] eq ""; # in case main called as a class method
+ local @ARGV = @{ $_[0] } if $_[0] and ref $_[0] ne "";
+
my $annex = Git::Annex->new;
my $just_print = 0;