Subversion Repositories DevTools

Rev

Rev 1592 | Rev 1596 | Go to most recent revision | Show entire file | Ignore whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1592 Rev 1594
Line 7913... Line 7913...
7913
# Returns         : List of files that match the search criteria
7913
# Returns         : List of files that match the search criteria
7914
#
7914
#
7915
 
7915
 
7916
my @search_list;             # Must be global to avoid closure problems
7916
my @search_list;             # Must be global to avoid closure problems
7917
my $search_len;
7917
my $search_len;
-
 
7918
my $search_base_dir;
-
 
7919
my $search_dirs_too;
7918
 
7920
 
7919
sub search
7921
sub search
7920
{
7922
{
7921
    my $self = shift;
7923
    my $self = shift;
7922
    $self->{base_dir} = $_[0] if (defined $_[0] );
7924
    $self->{base_dir} = $_[0] if (defined $_[0] );
Line 7949... Line 7951...
7949
    #       1) Start with a '/'
7951
    #       1) Start with a '/'
7950
    #       2) Are rooted as $dir, but don't include $dir
7952
    #       2) Are rooted as $dir, but don't include $dir
7951
    #
7953
    #
7952
    if ( $self->{recurse} )
7954
    if ( $self->{recurse} )
7953
    {
7955
    {
-
 
7956
        $search_dirs_too = $self->{dirs_too};
-
 
7957
        $search_base_dir = $self->{base_dir};
7954
        sub find_file_wanted
7958
        sub find_file_wanted
7955
        {
7959
        {
7956
            return if ( !$self->{dirs_too} && -d $_ );
7960
            return if ( !$search_dirs_too && -d $_ );               # skip if current is dir and we are not including dirs
-
 
7961
            return if ( $search_base_dir eq $File::Find::name );    # skip if current is base_dir as we dont include it
7957
            my $file = $File::Find::name;
7962
            my $file = $File::Find::name;
7958
            push @search_list, substr($file, $search_len );
7963
            push @search_list, substr($file, $search_len );
7959
        }
7964
        }
7960
 
7965
 
7961
        #
7966
        #