X-Git-Url: http://erislabs.net/gitweb/?p=id3fs.git;a=blobdiff_plain;f=lib%2FID3FS%2FPath.pm;h=89c2e9db3da2c57c3c8aa4ccce4c3be47faac04b;hp=4cf5fc29575d980319f68fbf6c1455b94a6e4cbf;hb=cbd85c75b3d68f4409c59eb8978572796f6b8d1d;hpb=9f0b226ddd9f9644c0a64d0b408aa8f50370f8ed diff --git a/lib/ID3FS/Path.pm b/lib/ID3FS/Path.pm index 4cf5fc2..89c2e9d 100644 --- a/lib/ID3FS/Path.pm +++ b/lib/ID3FS/Path.pm @@ -79,7 +79,7 @@ sub dirents # print "DIRENTS: FILE: $self->{path}\n"; if($state==$STATE_ALL) { - @dents=($PATH_ALLTRACKS, $PATH_NOARTIST, $self->artists()); + @dents=($self->filter($PATH_ALLTRACKS, $PATH_NOARTIST), $self->artists()); } elsif($state==$STATE_TAG || $state==$STATE_TAGVAL) { @@ -94,10 +94,7 @@ sub dirents { @dents=qw(AND OR); } - push(@dents, ($ENABLE_FILTER ? - $self->filter($PATH_ALLTRACKS, $PATH_NOARTIST) : - ($PATH_ALLTRACKS, $PATH_NOARTIST))); - push(@dents, $self->artists()); + push(@dents, $self->filter($PATH_ALLTRACKS, $PATH_NOARTIST), $self->artists()); } } elsif($state==$STATE_BOOLEAN) @@ -116,7 +113,7 @@ sub dirents } elsif($state==$STATE_ALBUMS) { - @dents=($self->filter($PATH_ALLTRACKS, $PATH_NOALBUM), $self->albums()); + @dents=$self->filter($PATH_ALLTRACKS, $PATH_NOALBUM, $self->albums()); } elsif($state==$STATE_TRACKLIST) { @@ -795,6 +792,7 @@ sub constraints_tag_list sub filter { my($self, @dirs)=@_; + return(@dirs) unless($ENABLE_FILTER); my $base=$self->{path}; my @outdirs=(); for my $dir (@dirs)