In SongID::ToSong, check whether the dir is empty before prepending a slash, so GetSongFromDir can be skipped when the dir is empty.
This commit is contained in:
+5
-2
@@ -1131,15 +1131,18 @@ Song *SongID::ToSong() const
|
|||||||
{
|
{
|
||||||
Song *pRet = NULL;
|
Song *pRet = NULL;
|
||||||
if( !m_Cache.Get(&pRet) )
|
if( !m_Cache.Get(&pRet) )
|
||||||
|
{
|
||||||
|
if(!sDir.empty())
|
||||||
{
|
{
|
||||||
// HACK for backwards compatibility: Re-add the leading "/".
|
// HACK for backwards compatibility: Re-add the leading "/".
|
||||||
// 2005/05/21 file layer changes added a leading slash.
|
// 2005/05/21 file layer changes added a leading slash.
|
||||||
RString sDir2 = sDir;
|
RString sDir2 = sDir;
|
||||||
if(sDir2.Left(1) != "/")
|
if(sDir2.Left(1) != "/")
|
||||||
|
{
|
||||||
sDir2 = "/" + sDir2;
|
sDir2 = "/" + sDir2;
|
||||||
|
}
|
||||||
if( !sDir2.empty() )
|
|
||||||
pRet = SONGMAN->GetSongFromDir(sDir2);
|
pRet = SONGMAN->GetSongFromDir(sDir2);
|
||||||
|
}
|
||||||
m_Cache.Set( pRet );
|
m_Cache.Set( pRet );
|
||||||
}
|
}
|
||||||
return pRet;
|
return pRet;
|
||||||
|
|||||||
Reference in New Issue
Block a user