Index: Buttons/BrowseTree.pm =================================================================== --- Buttons/BrowseTree.pm (revision 11753) +++ Buttons/BrowseTree.pm (working copy) @@ -386,12 +386,14 @@ } else { # one level down we show the folder name, below that we show two levels - my $level = (scalar @levels > 2) ? $levels[-2] : $levels[-1]; - my $obj = Slim::Schema->find('Track', $level); + for (my $x = (scalar @levels > 2 ? -2 : -1); $x <= -1; $x++) { - if (blessed($obj) && $obj->can('title')) { - - push @headers, $obj->title; + my $obj = Slim::Schema->find('Track', $levels[$x]); + + if (blessed($obj) && $obj->can('title')) { + + push @headers, ($obj->title ? $obj->title : Slim::Music::Info::fileName($obj->url)); + } } } Index: Music/Info.pm =================================================================== --- Music/Info.pm (revision 11753) +++ Music/Info.pm (working copy) @@ -640,7 +640,7 @@ $j = Slim::Utils::Misc::pathFromFileURL($j); - if ($j) { + if ($j && (splitdir($j))[1]) { $j = (splitdir($j))[-1]; } Index: Web/Pages/BrowseTree.pm =================================================================== --- Web/Pages/BrowseTree.pm (revision 11753) +++ Web/Pages/BrowseTree.pm (working copy) @@ -52,9 +52,11 @@ push @{$params->{'pwd_list'}}, { 'hreftype' => 'browseTree', - 'title' => $i == 0 ? string('MUSIC') : $obj->title, + 'title' => $i == 0 ? string('MUSIC') : + ($obj->title ? $obj->title : Slim::Music::Info::fileName($obj->url)), 'hierarchy' => join('/', @levels[0..$i]), }; + } } @@ -76,7 +78,7 @@ if ($count) { my %form = %$params; - $form{'hierarchy'} = undef; + $form{'hierarchy'} = undef; $form{'descend'} = 1; $form{'text'} = string('ALL_SONGS'); $form{'itemobj'} = $topLevelObj;