X-Git-Url: http://git.vpit.fr/?a=blobdiff_plain;f=lib%2FApp%2FRgit%2FConfig%2FDefault.pm;h=3accbbeb41346335d20128338a357d354e893d79;hb=e295d1865b0480223b82fe2373ba79cf5485466e;hp=69268464ba58b93ad94db44cb32c34792912adc8;hpb=67e585ffae69ce0c350a920658738d7864b1d54a;p=perl%2Fmodules%2Frgit.git diff --git a/lib/App/Rgit/Config/Default.pm b/lib/App/Rgit/Config/Default.pm index 6926846..3accbbe 100644 --- a/lib/App/Rgit/Config/Default.pm +++ b/lib/App/Rgit/Config/Default.pm @@ -15,11 +15,11 @@ App::Rgit::Config::Default - Default App::Rgit configuration class. =head1 VERSION -Version 0.03 +Version 0.06 =cut -our $VERSION = '0.03'; +our $VERSION = '0.06'; =head1 DESCRIPTION @@ -43,12 +43,15 @@ sub repos { my %repos; find { wanted => sub { - return unless -d $_; - my $r = App::Rgit::Repository->new(dir => $File::Find::name); - $repos{$r->repo} = $r if $r - and not exists $repos{$r->repo}; + return if m{(?:^|/)\.\.?$} + or not (-d $_ and -r _); + if (my $r = App::Rgit::Repository->new(dir => $_)) { + $File::Find::prune = 1; + $repos{$r->repo} = $r unless exists $repos{$r->repo}; + } }, - follow => 1 + follow => 1, + no_chdir => 1, }, $self->root; $self->{repos} = [ sort { $a->repo cmp $b->repo } values %repos ]; } @@ -57,6 +60,8 @@ sub repos { L. +L. + =head1 AUTHOR Vincent Pit, C<< >>, L. @@ -75,7 +80,7 @@ You can find documentation for this module with the perldoc command. =head1 COPYRIGHT & LICENSE -Copyright 2008 Vincent Pit, all rights reserved. +Copyright 2008,2009,2010 Vincent Pit, all rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.