misc: chore: Use explicit types in HLE project
This commit is contained in:
@@ -107,15 +107,15 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
foreach (StorageId storageId in Enum.GetValues<StorageId>())
|
||||
{
|
||||
if (!ContentPath.TryGetContentPath(storageId, out var contentPathString))
|
||||
if (!ContentPath.TryGetContentPath(storageId, out string contentPathString))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
if (!ContentPath.TryGetRealPath(contentPathString, out var contentDirectory))
|
||||
if (!ContentPath.TryGetRealPath(contentPathString, out string contentDirectory))
|
||||
{
|
||||
continue;
|
||||
}
|
||||
var registeredDirectory = Path.Combine(contentDirectory, "registered");
|
||||
string registeredDirectory = Path.Combine(contentDirectory, "registered");
|
||||
|
||||
Directory.CreateDirectory(registeredDirectory);
|
||||
|
||||
@@ -170,7 +170,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
}
|
||||
}
|
||||
|
||||
if (_locationEntries.TryGetValue(storageId, out var locationEntriesItem) && locationEntriesItem?.Count == 0)
|
||||
if (_locationEntries.TryGetValue(storageId, out LinkedList<LocationEntry> locationEntriesItem) && locationEntriesItem?.Count == 0)
|
||||
{
|
||||
_locationEntries.Remove(storageId);
|
||||
}
|
||||
@@ -200,7 +200,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
if (!mergedToContainer)
|
||||
{
|
||||
using var pfs = PartitionFileSystemUtils.OpenApplicationFileSystem(containerPath, _virtualFileSystem);
|
||||
using IFileSystem pfs = PartitionFileSystemUtils.OpenApplicationFileSystem(containerPath, _virtualFileSystem);
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -217,17 +217,17 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
if (AocData.TryGetValue(aocTitleId, out AocItem aoc))
|
||||
{
|
||||
var file = new FileStream(aoc.ContainerPath, FileMode.Open, FileAccess.Read);
|
||||
using var ncaFile = new UniqueRef<IFile>();
|
||||
FileStream file = new FileStream(aoc.ContainerPath, FileMode.Open, FileAccess.Read);
|
||||
using UniqueRef<IFile> ncaFile = new UniqueRef<IFile>();
|
||||
|
||||
switch (Path.GetExtension(aoc.ContainerPath))
|
||||
{
|
||||
case ".xci":
|
||||
var xci = new Xci(_virtualFileSystem.KeySet, file.AsStorage()).OpenPartition(XciPartitionType.Secure);
|
||||
XciPartition xci = new Xci(_virtualFileSystem.KeySet, file.AsStorage()).OpenPartition(XciPartitionType.Secure);
|
||||
xci.OpenFile(ref ncaFile.Ref, aoc.NcaPath.ToU8Span(), OpenMode.Read).ThrowIfFailure();
|
||||
break;
|
||||
case ".nsp":
|
||||
var pfs = new PartitionFileSystem();
|
||||
PartitionFileSystem pfs = new PartitionFileSystem();
|
||||
pfs.Initialize(file.AsStorage());
|
||||
pfs.OpenFile(ref ncaFile.Ref, aoc.NcaPath.ToU8Span(), OpenMode.Read).ThrowIfFailure();
|
||||
break;
|
||||
@@ -278,7 +278,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
{
|
||||
if (_contentDictionary.ContainsValue(ncaId))
|
||||
{
|
||||
var content = _contentDictionary.FirstOrDefault(x => x.Value == ncaId);
|
||||
KeyValuePair<(ulong titleId, NcaContentType type), string> content = _contentDictionary.FirstOrDefault(x => x.Value == ncaId);
|
||||
ulong titleId = content.Key.titleId;
|
||||
|
||||
NcaContentType contentType = content.Key.type;
|
||||
@@ -295,7 +295,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
{
|
||||
lock (_lock)
|
||||
{
|
||||
if (_contentDictionary.TryGetValue((titleId, contentType), out var contentDictionaryItem))
|
||||
if (_contentDictionary.TryGetValue((titleId, contentType), out string contentDictionaryItem))
|
||||
{
|
||||
return UInt128Utils.FromHex(contentDictionaryItem);
|
||||
}
|
||||
@@ -430,8 +430,8 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
public void InstallFirmware(string firmwareSource)
|
||||
{
|
||||
ContentPath.TryGetContentPath(StorageId.BuiltInSystem, out var contentPathString);
|
||||
ContentPath.TryGetRealPath(contentPathString, out var contentDirectory);
|
||||
ContentPath.TryGetContentPath(StorageId.BuiltInSystem, out string contentPathString);
|
||||
ContentPath.TryGetRealPath(contentPathString, out string contentDirectory);
|
||||
string registeredDirectory = Path.Combine(contentDirectory, "registered");
|
||||
string temporaryDirectory = Path.Combine(contentDirectory, "temp");
|
||||
|
||||
@@ -480,7 +480,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
{
|
||||
if (Directory.Exists(keysSource))
|
||||
{
|
||||
foreach (var filePath in Directory.EnumerateFiles(keysSource, "*.keys"))
|
||||
foreach (string filePath in Directory.EnumerateFiles(keysSource, "*.keys"))
|
||||
{
|
||||
VerifyKeysFile(filePath);
|
||||
File.Copy(filePath, Path.Combine(installDirectory, Path.GetFileName(filePath)), true);
|
||||
@@ -523,7 +523,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
Directory.Delete(temporaryDirectory, true);
|
||||
}
|
||||
Directory.CreateDirectory(temporaryDirectory);
|
||||
foreach (var entry in archive.Entries)
|
||||
foreach (ZipArchiveEntry entry in archive.Entries)
|
||||
{
|
||||
if (Path.GetExtension(entry.FullName).Equals(".keys", StringComparison.OrdinalIgnoreCase))
|
||||
{
|
||||
@@ -563,7 +563,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
private void InstallFromPartition(IFileSystem filesystem, string temporaryDirectory)
|
||||
{
|
||||
foreach (var entry in filesystem.EnumerateEntries("/", "*.nca"))
|
||||
foreach (DirectoryEntryEx entry in filesystem.EnumerateEntries("/", "*.nca"))
|
||||
{
|
||||
Nca nca = new(_virtualFileSystem.KeySet, OpenPossibleFragmentedFile(filesystem, entry.FullPath, OpenMode.Read).AsStorage());
|
||||
|
||||
@@ -587,7 +587,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
private static void InstallFromZip(ZipArchive archive, string temporaryDirectory)
|
||||
{
|
||||
foreach (var entry in archive.Entries)
|
||||
foreach (ZipArchiveEntry entry in archive.Entries)
|
||||
{
|
||||
if (entry.FullName.EndsWith(".nca") || entry.FullName.EndsWith(".nca/00"))
|
||||
{
|
||||
@@ -627,7 +627,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
private static IFile OpenPossibleFragmentedFile(IFileSystem filesystem, string path, OpenMode mode)
|
||||
{
|
||||
using var file = new UniqueRef<IFile>();
|
||||
using UniqueRef<IFile> file = new UniqueRef<IFile>();
|
||||
|
||||
if (filesystem.FileExists($"{path}/00"))
|
||||
{
|
||||
@@ -697,7 +697,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
{
|
||||
SystemVersion systemVersion = null;
|
||||
|
||||
foreach (var entry in archive.Entries)
|
||||
foreach (ZipArchiveEntry entry in archive.Entries)
|
||||
{
|
||||
if (entry.FullName.EndsWith(".nca") || entry.FullName.EndsWith(".nca/00"))
|
||||
{
|
||||
@@ -706,7 +706,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
Nca nca = new(_virtualFileSystem.KeySet, storage);
|
||||
|
||||
if (updateNcas.TryGetValue(nca.Header.TitleId, out var updateNcasItem))
|
||||
if (updateNcas.TryGetValue(nca.Header.TitleId, out List<(NcaContentType type, string path)> updateNcasItem))
|
||||
{
|
||||
updateNcasItem.Add((nca.Header.ContentType, entry.FullName));
|
||||
}
|
||||
@@ -717,13 +717,13 @@ namespace Ryujinx.HLE.FileSystem
|
||||
}
|
||||
}
|
||||
|
||||
if (updateNcas.TryGetValue(SystemUpdateTitleId, out var ncaEntry))
|
||||
if (updateNcas.TryGetValue(SystemUpdateTitleId, out List<(NcaContentType type, string path)> ncaEntry))
|
||||
{
|
||||
string metaPath = ncaEntry.FirstOrDefault(x => x.type == NcaContentType.Meta).path;
|
||||
|
||||
CnmtContentMetaEntry[] metaEntries = null;
|
||||
|
||||
var fileEntry = archive.GetEntry(metaPath);
|
||||
ZipArchiveEntry fileEntry = archive.GetEntry(metaPath);
|
||||
|
||||
using (Stream ncaStream = GetZipStream(fileEntry))
|
||||
{
|
||||
@@ -733,11 +733,11 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
string cnmtPath = fs.EnumerateEntries("/", "*.cnmt").Single().FullPath;
|
||||
|
||||
using var metaFile = new UniqueRef<IFile>();
|
||||
using UniqueRef<IFile> metaFile = new UniqueRef<IFile>();
|
||||
|
||||
if (fs.OpenFile(ref metaFile.Ref, cnmtPath.ToU8Span(), OpenMode.Read).IsSuccess())
|
||||
{
|
||||
var meta = new Cnmt(metaFile.Get.AsStream());
|
||||
Cnmt meta = new Cnmt(metaFile.Get.AsStream());
|
||||
|
||||
if (meta.Type == ContentMetaType.SystemUpdate)
|
||||
{
|
||||
@@ -753,16 +753,16 @@ namespace Ryujinx.HLE.FileSystem
|
||||
throw new FileNotFoundException("System update title was not found in the firmware package.");
|
||||
}
|
||||
|
||||
if (updateNcas.TryGetValue(SystemVersionTitleId, out var updateNcasItem))
|
||||
if (updateNcas.TryGetValue(SystemVersionTitleId, out List<(NcaContentType type, string path)> updateNcasItem))
|
||||
{
|
||||
string versionEntry = updateNcasItem.FirstOrDefault(x => x.type != NcaContentType.Meta).path;
|
||||
|
||||
using Stream ncaStream = GetZipStream(archive.GetEntry(versionEntry));
|
||||
Nca nca = new(_virtualFileSystem.KeySet, ncaStream.AsStorage());
|
||||
|
||||
var romfs = nca.OpenFileSystem(NcaSectionType.Data, IntegrityCheckLevel.ErrorOnInvalid);
|
||||
IFileSystem romfs = nca.OpenFileSystem(NcaSectionType.Data, IntegrityCheckLevel.ErrorOnInvalid);
|
||||
|
||||
using var systemVersionFile = new UniqueRef<IFile>();
|
||||
using UniqueRef<IFile> systemVersionFile = new UniqueRef<IFile>();
|
||||
|
||||
if (romfs.OpenFile(ref systemVersionFile.Ref, "/file".ToU8Span(), OpenMode.Read).IsSuccess())
|
||||
{
|
||||
@@ -798,11 +798,11 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
string cnmtPath = fs.EnumerateEntries("/", "*.cnmt").Single().FullPath;
|
||||
|
||||
using var metaFile = new UniqueRef<IFile>();
|
||||
using UniqueRef<IFile> metaFile = new UniqueRef<IFile>();
|
||||
|
||||
if (fs.OpenFile(ref metaFile.Ref, cnmtPath.ToU8Span(), OpenMode.Read).IsSuccess())
|
||||
{
|
||||
var meta = new Cnmt(metaFile.Get.AsStream());
|
||||
Cnmt meta = new Cnmt(metaFile.Get.AsStream());
|
||||
|
||||
IStorage contentStorage = contentNcaStream.AsStorage();
|
||||
if (contentStorage.GetSize(out long size).IsSuccess())
|
||||
@@ -830,9 +830,9 @@ namespace Ryujinx.HLE.FileSystem
|
||||
{
|
||||
StringBuilder extraNcas = new();
|
||||
|
||||
foreach (var entry in updateNcas)
|
||||
foreach (KeyValuePair<ulong, List<(NcaContentType type, string path)>> entry in updateNcas)
|
||||
{
|
||||
foreach (var (type, path) in entry.Value)
|
||||
foreach ((NcaContentType type, string path) in entry.Value)
|
||||
{
|
||||
extraNcas.AppendLine(path);
|
||||
}
|
||||
@@ -855,7 +855,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
CnmtContentMetaEntry[] metaEntries = null;
|
||||
|
||||
foreach (var entry in filesystem.EnumerateEntries("/", "*.nca"))
|
||||
foreach (DirectoryEntryEx entry in filesystem.EnumerateEntries("/", "*.nca"))
|
||||
{
|
||||
IStorage ncaStorage = OpenPossibleFragmentedFile(filesystem, entry.FullPath, OpenMode.Read).AsStorage();
|
||||
|
||||
@@ -867,11 +867,11 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
string cnmtPath = fs.EnumerateEntries("/", "*.cnmt").Single().FullPath;
|
||||
|
||||
using var metaFile = new UniqueRef<IFile>();
|
||||
using UniqueRef<IFile> metaFile = new UniqueRef<IFile>();
|
||||
|
||||
if (fs.OpenFile(ref metaFile.Ref, cnmtPath.ToU8Span(), OpenMode.Read).IsSuccess())
|
||||
{
|
||||
var meta = new Cnmt(metaFile.Get.AsStream());
|
||||
Cnmt meta = new Cnmt(metaFile.Get.AsStream());
|
||||
|
||||
if (meta.Type == ContentMetaType.SystemUpdate)
|
||||
{
|
||||
@@ -883,9 +883,9 @@ namespace Ryujinx.HLE.FileSystem
|
||||
}
|
||||
else if (nca.Header.TitleId == SystemVersionTitleId && nca.Header.ContentType == NcaContentType.Data)
|
||||
{
|
||||
var romfs = nca.OpenFileSystem(NcaSectionType.Data, IntegrityCheckLevel.ErrorOnInvalid);
|
||||
IFileSystem romfs = nca.OpenFileSystem(NcaSectionType.Data, IntegrityCheckLevel.ErrorOnInvalid);
|
||||
|
||||
using var systemVersionFile = new UniqueRef<IFile>();
|
||||
using UniqueRef<IFile> systemVersionFile = new UniqueRef<IFile>();
|
||||
|
||||
if (romfs.OpenFile(ref systemVersionFile.Ref, "/file".ToU8Span(), OpenMode.Read).IsSuccess())
|
||||
{
|
||||
@@ -893,7 +893,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
}
|
||||
}
|
||||
|
||||
if (updateNcas.TryGetValue(nca.Header.TitleId, out var updateNcasItem))
|
||||
if (updateNcas.TryGetValue(nca.Header.TitleId, out List<(NcaContentType type, string path)> updateNcasItem))
|
||||
{
|
||||
updateNcasItem.Add((nca.Header.ContentType, entry.FullPath));
|
||||
}
|
||||
@@ -912,7 +912,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
foreach (CnmtContentMetaEntry metaEntry in metaEntries)
|
||||
{
|
||||
if (updateNcas.TryGetValue(metaEntry.TitleId, out var ncaEntry))
|
||||
if (updateNcas.TryGetValue(metaEntry.TitleId, out List<(NcaContentType type, string path)> ncaEntry))
|
||||
{
|
||||
string metaNcaPath = ncaEntry.FirstOrDefault(x => x.type == NcaContentType.Meta).path;
|
||||
string contentPath = ncaEntry.FirstOrDefault(x => x.type != NcaContentType.Meta).path;
|
||||
@@ -935,11 +935,11 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
string cnmtPath = fs.EnumerateEntries("/", "*.cnmt").Single().FullPath;
|
||||
|
||||
using var metaFile = new UniqueRef<IFile>();
|
||||
using UniqueRef<IFile> metaFile = new UniqueRef<IFile>();
|
||||
|
||||
if (fs.OpenFile(ref metaFile.Ref, cnmtPath.ToU8Span(), OpenMode.Read).IsSuccess())
|
||||
{
|
||||
var meta = new Cnmt(metaFile.Get.AsStream());
|
||||
Cnmt meta = new Cnmt(metaFile.Get.AsStream());
|
||||
|
||||
if (contentStorage.GetSize(out long size).IsSuccess())
|
||||
{
|
||||
@@ -966,9 +966,9 @@ namespace Ryujinx.HLE.FileSystem
|
||||
{
|
||||
StringBuilder extraNcas = new();
|
||||
|
||||
foreach (var entry in updateNcas)
|
||||
foreach (KeyValuePair<ulong, List<(NcaContentType type, string path)>> entry in updateNcas)
|
||||
{
|
||||
foreach (var (type, path) in entry.Value)
|
||||
foreach ((NcaContentType type, string path) in entry.Value)
|
||||
{
|
||||
extraNcas.AppendLine(path);
|
||||
}
|
||||
@@ -987,22 +987,22 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
lock (_lock)
|
||||
{
|
||||
var locationEnties = _locationEntries[StorageId.BuiltInSystem];
|
||||
LinkedList<LocationEntry> locationEnties = _locationEntries[StorageId.BuiltInSystem];
|
||||
|
||||
foreach (var entry in locationEnties)
|
||||
foreach (LocationEntry entry in locationEnties)
|
||||
{
|
||||
if (entry.ContentType == NcaContentType.Data)
|
||||
{
|
||||
var path = VirtualFileSystem.SwitchPathToSystemPath(entry.ContentPath);
|
||||
string path = VirtualFileSystem.SwitchPathToSystemPath(entry.ContentPath);
|
||||
|
||||
using FileStream fileStream = File.OpenRead(path);
|
||||
Nca nca = new(_virtualFileSystem.KeySet, fileStream.AsStorage());
|
||||
|
||||
if (nca.Header.TitleId == SystemVersionTitleId && nca.Header.ContentType == NcaContentType.Data)
|
||||
{
|
||||
var romfs = nca.OpenFileSystem(NcaSectionType.Data, IntegrityCheckLevel.ErrorOnInvalid);
|
||||
IFileSystem romfs = nca.OpenFileSystem(NcaSectionType.Data, IntegrityCheckLevel.ErrorOnInvalid);
|
||||
|
||||
using var systemVersionFile = new UniqueRef<IFile>();
|
||||
using UniqueRef<IFile> systemVersionFile = new UniqueRef<IFile>();
|
||||
|
||||
if (romfs.OpenFile(ref systemVersionFile.Ref, "/file".ToU8Span(), OpenMode.Read).IsSuccess())
|
||||
{
|
||||
@@ -1073,7 +1073,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
public bool AreKeysAlredyPresent(string pathToCheck)
|
||||
{
|
||||
string[] fileNames = { "prod.keys", "title.keys", "console.keys", "dev.keys" };
|
||||
foreach (var file in fileNames)
|
||||
foreach (string file in fileNames)
|
||||
{
|
||||
if (File.Exists(Path.Combine(pathToCheck, file)))
|
||||
{
|
||||
|
||||
@@ -39,7 +39,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
// TODO: Replace this with a check for IdOffset as soon as LibHac supports it:
|
||||
// && entry.IdOffset == programIndex
|
||||
|
||||
foreach (var entry in _cnmt.ContentEntries)
|
||||
foreach (CnmtContentEntry entry in _cnmt.ContentEntries)
|
||||
{
|
||||
if (entry.Type != type)
|
||||
{
|
||||
|
||||
@@ -61,7 +61,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
public void LoadRomFs(ulong pid, string fileName)
|
||||
{
|
||||
var romfsStream = new FileStream(fileName, FileMode.Open, FileAccess.Read);
|
||||
FileStream romfsStream = new FileStream(fileName, FileMode.Open, FileAccess.Read);
|
||||
|
||||
_romFsByPid.AddOrUpdate(pid, romfsStream, (pid, oldStream) =>
|
||||
{
|
||||
@@ -140,8 +140,8 @@ namespace Ryujinx.HLE.FileSystem
|
||||
return $"{rawPath}:/";
|
||||
}
|
||||
|
||||
var basePath = rawPath.AsSpan(0, firstSeparatorOffset);
|
||||
var fileName = rawPath.AsSpan(firstSeparatorOffset + 1);
|
||||
ReadOnlySpan<char> basePath = rawPath.AsSpan(0, firstSeparatorOffset);
|
||||
ReadOnlySpan<char> fileName = rawPath.AsSpan(firstSeparatorOffset + 1);
|
||||
|
||||
return $"{basePath}:/{fileName}";
|
||||
}
|
||||
@@ -194,7 +194,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
}
|
||||
|
||||
fsServerClient = horizon.CreatePrivilegedHorizonClient();
|
||||
var fsServer = new FileSystemServer(fsServerClient);
|
||||
FileSystemServer fsServer = new FileSystemServer(fsServerClient);
|
||||
|
||||
RandomDataGenerator randomGenerator = Random.Shared.NextBytes;
|
||||
|
||||
@@ -208,7 +208,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
SdCard.SetSdCardInserted(true);
|
||||
|
||||
var fsServerConfig = new FileSystemServerConfig
|
||||
FileSystemServerConfig fsServerConfig = new FileSystemServerConfig
|
||||
{
|
||||
ExternalKeySet = KeySet.ExternalKeySet,
|
||||
FsCreators = fsServerObjects.FsCreators,
|
||||
@@ -270,7 +270,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
{
|
||||
foreach (DirectoryEntryEx ticketEntry in fs.EnumerateEntries("/", "*.tik"))
|
||||
{
|
||||
using var ticketFile = new UniqueRef<IFile>();
|
||||
using UniqueRef<IFile> ticketFile = new UniqueRef<IFile>();
|
||||
|
||||
Result result = fs.OpenFile(ref ticketFile.Ref, ticketEntry.FullPath.ToU8Span(), OpenMode.Read);
|
||||
|
||||
@@ -286,7 +286,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
continue;
|
||||
|
||||
Ticket ticket = new(new MemoryStream(ticketData));
|
||||
var titleKey = ticket.GetTitleKey(KeySet);
|
||||
byte[] titleKey = ticket.GetTitleKey(KeySet);
|
||||
|
||||
if (titleKey != null)
|
||||
{
|
||||
@@ -334,7 +334,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
{
|
||||
Span<SaveDataInfo> info = stackalloc SaveDataInfo[8];
|
||||
|
||||
using var iterator = new UniqueRef<SaveDataIterator>();
|
||||
using UniqueRef<SaveDataIterator> iterator = new UniqueRef<SaveDataIterator>();
|
||||
|
||||
Result rc = hos.Fs.OpenSaveDataIterator(ref iterator.Ref, spaceId);
|
||||
if (rc.IsFailure())
|
||||
@@ -398,7 +398,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
}
|
||||
|
||||
const string MountName = "SaveDir";
|
||||
var mountNameU8 = MountName.ToU8Span();
|
||||
U8Span mountNameU8 = MountName.ToU8Span();
|
||||
|
||||
BisPartitionId partitionId = info.SpaceId switch
|
||||
{
|
||||
@@ -415,7 +415,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
|
||||
try
|
||||
{
|
||||
var path = $"{MountName}:/save/{info.SaveDataId:x16}".ToU8Span();
|
||||
U8Span path = $"{MountName}:/save/{info.SaveDataId:x16}".ToU8Span();
|
||||
|
||||
rc = hos.Fs.GetEntryType(out _, path);
|
||||
|
||||
@@ -437,7 +437,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
{
|
||||
list = null;
|
||||
|
||||
var mountName = "system".ToU8Span();
|
||||
U8Span mountName = "system".ToU8Span();
|
||||
DirectoryHandle handle = default;
|
||||
List<ulong> localList = new();
|
||||
|
||||
@@ -498,7 +498,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
// Only save data IDs added to SystemExtraDataFixInfo will be fixed.
|
||||
private static Result FixUnindexedSystemSaves(HorizonClient hos, List<ulong> existingSaveIds)
|
||||
{
|
||||
foreach (var fixInfo in _systemExtraDataFixInfo)
|
||||
foreach (ExtraDataFixInfo fixInfo in _systemExtraDataFixInfo)
|
||||
{
|
||||
if (!existingSaveIds.Contains(fixInfo.StaticSaveDataId))
|
||||
{
|
||||
@@ -665,7 +665,7 @@ namespace Ryujinx.HLE.FileSystem
|
||||
{
|
||||
if (disposing)
|
||||
{
|
||||
foreach (var stream in _romFsByPid.Values)
|
||||
foreach (Stream stream in _romFsByPid.Values)
|
||||
{
|
||||
stream.Close();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user