Speed up FileSystem
This commit is contained in:
@@ -67,11 +67,8 @@ namespace OpenRA.FileFormats
|
|||||||
static Stream GetFromCache( Cache<uint, List<IFolder>> index, string filename )
|
static Stream GetFromCache( Cache<uint, List<IFolder>> index, string filename )
|
||||||
{
|
{
|
||||||
foreach( var folder in index[ PackageEntry.HashFilename( filename ) ] )
|
foreach( var folder in index[ PackageEntry.HashFilename( filename ) ] )
|
||||||
{
|
if (folder.Exists(filename))
|
||||||
Stream s = folder.GetContent(filename);
|
return folder.GetContent(filename);
|
||||||
if( s != null )
|
|
||||||
return s;
|
|
||||||
}
|
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -86,9 +83,8 @@ namespace OpenRA.FileFormats
|
|||||||
|
|
||||||
foreach( IFolder folder in mountedFolders )
|
foreach( IFolder folder in mountedFolders )
|
||||||
{
|
{
|
||||||
Stream s = folder.GetContent(filename);
|
if (folder.Exists(filename))
|
||||||
if( s != null )
|
return folder.GetContent(filename);
|
||||||
return s;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
throw new FileNotFoundException( string.Format( "File not found: {0}", filename ), filename );
|
throw new FileNotFoundException( string.Format( "File not found: {0}", filename ), filename );
|
||||||
@@ -109,11 +105,8 @@ namespace OpenRA.FileFormats
|
|||||||
foreach( var ext in exts )
|
foreach( var ext in exts )
|
||||||
{
|
{
|
||||||
foreach( IFolder folder in mountedFolders )
|
foreach( IFolder folder in mountedFolders )
|
||||||
{
|
if (folder.Exists(filename + ext))
|
||||||
Stream s = folder.GetContent( filename + ext );
|
return folder.GetContent( filename + ext );
|
||||||
if( s != null )
|
|
||||||
return s;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
throw new FileNotFoundException( string.Format( "File not found: {0}", filename ), filename );
|
throw new FileNotFoundException( string.Format( "File not found: {0}", filename ), filename );
|
||||||
|
|||||||
Reference in New Issue
Block a user