Index: /Users/mh/Documents/workspace/trunk/server/Slim/Utils/Misc.pm =================================================================== --- /Users/mh/Documents/workspace/trunk/server/Slim/Utils/Misc.pm (revision 20533) +++ /Users/mh/Documents/workspace/trunk/server/Slim/Utils/Misc.pm (working copy) @@ -383,18 +383,17 @@ $fullpath = pathFromFileURL($fullpath) unless $fullpath =~ m|^/|; - my $rsc = Mac::Resources::FSpOpenResFile($fullpath, 0); + if (my $rsc = Mac::Resources::FSpOpenResFile($fullpath, 0)) { + + if (my $alis = Mac::Resources::GetIndResource('alis', 1)) { + + $path = Mac::Files::ResolveAlias($alis); - return '' unless $rsc; + Mac::Resources::ReleaseResource($alis); + } - my $alis = Mac::Resources::GetIndResource('alis', 1); - - return '' unless $alis; - - $path = Mac::Files::ResolveAlias($alis); - - Mac::Resources::ReleaseResource($alis); - Mac::Resources::CloseResFile($rsc); + Mac::Resources::CloseResFile($rsc); + } } return $path; @@ -408,6 +407,7 @@ sub isMacAlias { my $fullpath = shift; + my $isAlias = 0; return unless $fullpath && $canFollowAlias; @@ -413,18 +413,19 @@ $fullpath = pathFromFileURL($fullpath) unless $fullpath =~ m|^/|; - my $rsc = Mac::Resources::FSpOpenResFile($fullpath, 0); + if (my $rsc = Mac::Resources::FSpOpenResFile($fullpath, 0)) { - return unless $rsc; + if (my $alis = Mac::Resources::GetIndResource('alis', 1)) { - my $alis = Mac::Resources::GetIndResource('alis', 1); + $isAlias = 1; - return unless $alis; + Mac::Resources::ReleaseResource($alis); + } - Mac::Resources::ReleaseResource($alis); - Mac::Resources::CloseResFile($rsc); + Mac::Resources::CloseResFile($rsc); + } - return 1; + return $isAlias; } =head2 pathFromFileURL( $url, [ $noCache ])