Split GetInfo stream implementation

This commit is contained in:
Matt Nadareski
2025-01-04 22:50:36 -05:00
parent b784a3b0bf
commit 5daa42636b
8 changed files with 60 additions and 29 deletions

View File

@@ -239,7 +239,7 @@ namespace SabreTools.FileTypes.Archives
var gz = new gZip();
ZipReturn ret = gz.ZipFileOpen(Filename);
ret = gz.ZipFileOpenReadStream(0, out Stream? gzstream, out ulong streamSize);
gzipEntryRom = FileTypeTool.GetInfo(gzstream, hashes: _hashTypes);
gzipEntryRom = FileTypeTool.GetInfo(gzstream, _hashTypes);
gzipEntryRom.Filename = gz.GetLocalFile(0).Filename;
gzipEntryRom.Parent = gamename;
gzipEntryRom.Date = (gz.TimeStamp > 0 ? gz.TimeStamp.ToString() : null);
@@ -440,7 +440,7 @@ namespace SabreTools.FileTypes.Archives
outDir = Path.GetFullPath(outDir);
// Now get the Rom info for the file so we have hashes and size
baseFile = FileTypeTool.GetInfo(inputStream, keepReadOpen: true);
baseFile = FileTypeTool.GetInfo(inputStream, _hashTypes, keepReadOpen: true);
// Get the output file name
string outfile = Path.Combine(outDir, Utilities.GetDepotPath(baseFile.SHA1, Depth) ?? string.Empty);

View File

@@ -210,7 +210,7 @@ namespace SabreTools.FileTypes.Archives
else
{
using Stream entryStream = entry.OpenEntryStream();
rarEntryRom = FileTypeTool.GetInfo(entryStream, size: entry.Size, hashes: _hashTypes);
rarEntryRom = FileTypeTool.GetInfo(entryStream, entry.Size, _hashTypes);
}
// Fill in common details and add to the list

View File

@@ -282,7 +282,10 @@ namespace SabreTools.FileTypes.Archives
// Otherwise, use the stream directly
else
{
zipEntryRom = FileTypeTool.GetInfo(readStream, size: (long)zf.GetLocalFile(i).UncompressedSize, hashes: _hashTypes, keepReadOpen: true);
zipEntryRom = FileTypeTool.GetInfo(readStream,
(long)zf.GetLocalFile(i).UncompressedSize,
_hashTypes,
keepReadOpen: true);
}
// Fill in common details and add to the list

View File

@@ -203,7 +203,7 @@ namespace SabreTools.FileTypes.Archives
else
{
using Stream entryStream = entry.OpenEntryStream();
tarEntryRom = FileTypeTool.GetInfo(entryStream, size: entry.Size, hashes: _hashTypes);
tarEntryRom = FileTypeTool.GetInfo(entryStream, entry.Size, _hashTypes);
}
// Fill in common details and add to the list

View File

@@ -215,7 +215,7 @@ namespace SabreTools.FileTypes.Archives
else
{
var xzStream = new XZStream(File.OpenRead(Filename!));
xzEntryRom = FileTypeTool.GetInfo(xzStream, hashes: _hashTypes);
xzEntryRom = FileTypeTool.GetInfo(xzStream, _hashTypes);
xzEntryRom.Filename = gamename;
xzStream.Dispose();
}
@@ -330,7 +330,7 @@ namespace SabreTools.FileTypes.Archives
outDir = Path.GetFullPath(outDir);
// Now get the Rom info for the file so we have hashes and size
baseFile = FileTypeTool.GetInfo(inputStream, keepReadOpen: true);
baseFile = FileTypeTool.GetInfo(inputStream, _hashTypes, keepReadOpen: true);
// Get the output file name
string outfile = Path.Combine(outDir, Core.Tools.Utilities.GetDepotPath(baseFile.SHA1, Depth)!);

View File

@@ -362,8 +362,8 @@ namespace SabreTools.FileTypes.Archives
else
{
zipEntryRom = FileTypeTool.GetInfo(readStream,
size: (long)localFile.UncompressedSize,
hashes: _hashTypes,
(long)localFile.UncompressedSize,
_hashTypes,
keepReadOpen: true);
}
@@ -419,8 +419,8 @@ namespace SabreTools.FileTypes.Archives
else
{
zipEntryRom = FileTypeTool.GetInfo(readStream,
size: localFile.Length,
hashes: _hashTypes,
localFile.Length,
_hashTypes,
keepReadOpen: false);
}