The repository constructor mistakenly rewrote a Directory parameter that Perl happens to evaluate to false (e.g. "0") to ".".
Signed-off-by: Philippe Bruhat (BooK) <book@cpan.org> --- perl/Git.pm | 7 ++++--- 1 files changed, 4 insertions(+), 3 deletions(-)
Show changes to perl/Git.pm +4 −3
diff --git a/perl/Git.pm b/perl/Git.pm index 8392a68..ad0f530 100644 --- a/perl/Git.pm +++ b/perl/Git.pm @@ -166,11 +166,12 @@ sub repository { } } - if (not defined $opts{Repository} and not defined $opts{WorkingCopy}) { - $opts{Directory} ||= '.'; + if (not defined $opts{Repository} and not defined $opts{WorkingCopy} + and not defined $opts{Directory}) { + $opts{Directory} = '.'; } - if ($opts{Directory}) { + if (defined $opts{Directory}) { -d $opts{Directory} or throw Error::Simple("Directory not found: $!"); my $search = Git->repository(WorkingCopy => $opts{Directory});
-- 1.6.0.3.517.g759a