Changeset 12 in mp3-find for trunk/lib/MP3/Find
- Timestamp:
- 02/14/06 20:19:23 (19 years ago)
- Location:
- trunk/lib/MP3/Find
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/lib/MP3/Find/DB.pm
r10 r12 123 123 warn "Multiple records for $$mp3{FILENAME}\n" if @$records > 1; 124 124 125 #TODO: maybe print status updates somewhere else? 125 126 if (@$records == 0) { 126 127 $insert_sth->execute(map { $mp3->{$$_[0]} } @COLUMNS); … … 138 139 # (see http://rt.cpan.org/Ticket/Display.html?id=9643#txn-120724) 139 140 foreach ($mtime_sth, $insert_sth, $update_sth) { 141 $_->{RaiseError} = 0; # don't die on error 140 142 $_->{Active} = 1; 141 143 $_->finish; -
trunk/lib/MP3/Find/Filesystem.pm
r3 r12 30 30 } 31 31 32 if ($$options{exclude_path}) { 33 my $ref = ref $$options{exclude_path}; 34 if ($ref eq 'ARRAY') { 35 $$options{exclude_path} = '(' . join('|', @{ $$options{exclude_path} }) . ')'; 36 } 37 unless ($ref eq 'Regexp') { 38 $$options{exclude_path} = qr[$$options{exclude_path}]; 39 } 40 } 41 32 42 # run the actual find 33 43 my @results; 34 find(sub { match_mp3($File::Find::name, $query, \@results ) }, $_) foreach @$dirs;44 find(sub { match_mp3($File::Find::name, $query, \@results, $options) }, $_) foreach @$dirs; 35 45 36 46 # sort the results … … 54 64 55 65 sub match_mp3 { 56 my ($filename, $query, $results ) = @_;66 my ($filename, $query, $results, $options) = @_; 57 67 58 68 return unless $filename =~ m{[^/]\.mp3$}; 69 if ($$options{exclude_path}) { 70 return if $filename =~ $$options{exclude_path}; 71 } 72 59 73 my $mp3 = { 60 74 FILENAME => $filename, … … 103 117 =head2 Special Options 104 118 105 There are no special options for B<MP3::Find::Filesystem>. See 106 L<MP3::Find> for the description of the general options. 119 =over 120 121 =item C<exclude_path> 122 123 Scalar or arrayref; any file whose name matches any of these paths 124 will be skipped. 107 125 108 126 =head1 SEE ALSO
Note: See TracChangeset
for help on using the changeset viewer.