rebase fix

This commit is contained in:
Emmanuel Hansen 2023-10-29 07:35:54 +00:00
parent 946079f5e3
commit f6850bcc1a
2 changed files with 14 additions and 10 deletions

View File

@ -159,7 +159,7 @@ namespace LibRyujinx
{ {
try try
{ {
PartitionFileSystem pfs; IFileSystem pfs;
bool isExeFs = false; bool isExeFs = false;
@ -171,7 +171,9 @@ namespace LibRyujinx
} }
else else
{ {
pfs = new PartitionFileSystem(gameStream.AsStorage()); var pfsTemp = new PartitionFileSystem();
pfsTemp.Initialize(gameStream.AsStorage()).ThrowIfFailure();
pfs = pfsTemp;
// If the NSP doesn't have a main NCA, decrement the number of applications found and then continue to the next application. // If the NSP doesn't have a main NCA, decrement the number of applications found and then continue to the next application.
bool hasMainNca = false; bool hasMainNca = false;
@ -372,7 +374,7 @@ namespace LibRyujinx
version = controlData.DisplayVersionString.ToString(); version = controlData.DisplayVersionString.ToString();
} }
void GetControlFsAndTitleId(PartitionFileSystem pfs, out IFileSystem? controlFs, out string? titleId) void GetControlFsAndTitleId(IFileSystem pfs, out IFileSystem? controlFs, out string? titleId)
{ {
if (SwitchDevice == null) if (SwitchDevice == null)
{ {
@ -394,7 +396,7 @@ namespace LibRyujinx
titleId = controlNca?.Header.TitleId.ToString("x16"); titleId = controlNca?.Header.TitleId.ToString("x16");
} }
(Nca? mainNca, Nca? patchNca, Nca? controlNca) GetGameData(VirtualFileSystem fileSystem, PartitionFileSystem pfs, int programIndex) (Nca? mainNca, Nca? patchNca, Nca? controlNca) GetGameData(VirtualFileSystem fileSystem, IFileSystem pfs, int programIndex)
{ {
Nca? mainNca = null; Nca? mainNca = null;
Nca? patchNca = null; Nca? patchNca = null;
@ -495,7 +497,8 @@ namespace LibRyujinx
if (File.Exists(updatePath)) if (File.Exists(updatePath))
{ {
FileStream file = new(updatePath, FileMode.Open, FileAccess.Read); FileStream file = new(updatePath, FileMode.Open, FileAccess.Read);
PartitionFileSystem nsp = new(file.AsStorage()); PartitionFileSystem nsp = new();
nsp.Initialize(file.AsStorage()).ThrowIfFailure();
return GetGameUpdateDataFromPartition(fileSystem, nsp, titleIdBase.ToString("x16"), programIndex); return GetGameUpdateDataFromPartition(fileSystem, nsp, titleIdBase.ToString("x16"), programIndex);
} }
@ -554,7 +557,8 @@ namespace LibRyujinx
{ {
using FileStream containerFile = File.OpenRead(path); using FileStream containerFile = File.OpenRead(path);
PartitionFileSystem partitionFileSystem = new(containerFile.AsStorage()); PartitionFileSystem partitionFileSystem = new();
partitionFileSystem.Initialize(containerFile.AsStorage()).ThrowIfFailure();
SwitchDevice.VirtualFileSystem.ImportTickets(partitionFileSystem); SwitchDevice.VirtualFileSystem.ImportTickets(partitionFileSystem);
@ -592,9 +596,9 @@ namespace LibRyujinx
return new List<string>(); return new List<string>();
using FileStream containerFile = File.OpenRead(path); using FileStream containerFile = File.OpenRead(path);
PartitionFileSystem partitionFileSystem = new(containerFile.AsStorage()); PartitionFileSystem partitionFileSystem = new();
bool containsDownloadableContent = false; partitionFileSystem.Initialize(containerFile.AsStorage()).ThrowIfFailure();
SwitchDevice.VirtualFileSystem.ImportTickets(partitionFileSystem); SwitchDevice.VirtualFileSystem.ImportTickets(partitionFileSystem);
List<string> paths = new List<string>(); List<string> paths = new List<string>();

View File

@ -20,7 +20,7 @@ namespace Ryujinx.HLE.Loaders.Processes.Extensions
private static readonly DownloadableContentJsonSerializerContext _contentSerializerContext = new(JsonHelper.GetDefaultSerializerOptions()); private static readonly DownloadableContentJsonSerializerContext _contentSerializerContext = new(JsonHelper.GetDefaultSerializerOptions());
private static readonly TitleUpdateMetadataJsonSerializerContext _titleSerializerContext = new(JsonHelper.GetDefaultSerializerOptions()); private static readonly TitleUpdateMetadataJsonSerializerContext _titleSerializerContext = new(JsonHelper.GetDefaultSerializerOptions());
internal static (bool, ProcessResult) TryLoad<TMetaData, TFormat, THeader, TEntry>(this PartitionFileSystemCore<TMetaData, TFormat, THeader, TEntry> partitionFileSystem, Switch device, , Stream stream, out string errorMessage, string extension) internal static (bool, ProcessResult) TryLoad<TMetaData, TFormat, THeader, TEntry>(this PartitionFileSystemCore<TMetaData, TFormat, THeader, TEntry> partitionFileSystem, Switch device, Stream stream, out string errorMessage, string extension)
where TMetaData : PartitionFileSystemMetaCore<TFormat, THeader, TEntry>, new() where TMetaData : PartitionFileSystemMetaCore<TFormat, THeader, TEntry>, new()
where TFormat : IPartitionFileSystemFormat where TFormat : IPartitionFileSystemFormat
where THeader : unmanaged, IPartitionFileSystemHeader where THeader : unmanaged, IPartitionFileSystemHeader