aboutsummaryrefslogtreecommitdiff
path: root/Ryujinx.HLE/HOS/Services/Fs/FileSystemProxy/IDirectory.cs
diff options
context:
space:
mode:
authorAlex Barney <thealexbarney@gmail.com>2021-12-23 09:55:50 -0700
committerGitHub <noreply@github.com>2021-12-23 13:55:50 -0300
commitaa932a6df1764b7c600ae0ba4e0c7a0ba802f312 (patch)
tree24a390cf2330620aeeab1efbd42ae4099f61ca86 /Ryujinx.HLE/HOS/Services/Fs/FileSystemProxy/IDirectory.cs
parentcb43cc7e322014ce2bd0ee73b06d403be62fa8d5 (diff)
Update to LibHac v0.14.3 (#2925)
* Update to LibHac v0.14.3 * Fix loading NCAs that don't have a data partition
Diffstat (limited to 'Ryujinx.HLE/HOS/Services/Fs/FileSystemProxy/IDirectory.cs')
-rw-r--r--Ryujinx.HLE/HOS/Services/Fs/FileSystemProxy/IDirectory.cs13
1 files changed, 7 insertions, 6 deletions
diff --git a/Ryujinx.HLE/HOS/Services/Fs/FileSystemProxy/IDirectory.cs b/Ryujinx.HLE/HOS/Services/Fs/FileSystemProxy/IDirectory.cs
index 99e545b1..b04e8675 100644
--- a/Ryujinx.HLE/HOS/Services/Fs/FileSystemProxy/IDirectory.cs
+++ b/Ryujinx.HLE/HOS/Services/Fs/FileSystemProxy/IDirectory.cs
@@ -1,15 +1,16 @@
using LibHac;
+using LibHac.Common;
using LibHac.Sf;
namespace Ryujinx.HLE.HOS.Services.Fs.FileSystemProxy
{
class IDirectory : DisposableIpcService
{
- private ReferenceCountedDisposable<LibHac.FsSrv.Sf.IDirectory> _baseDirectory;
+ private SharedRef<LibHac.FsSrv.Sf.IDirectory> _baseDirectory;
- public IDirectory(ReferenceCountedDisposable<LibHac.FsSrv.Sf.IDirectory> directory)
+ public IDirectory(ref SharedRef<LibHac.FsSrv.Sf.IDirectory> directory)
{
- _baseDirectory = directory;
+ _baseDirectory = SharedRef<LibHac.FsSrv.Sf.IDirectory>.CreateMove(ref directory);
}
[CommandHipc(0)]
@@ -21,7 +22,7 @@ namespace Ryujinx.HLE.HOS.Services.Fs.FileSystemProxy
byte[] entryBuffer = new byte[bufferLen];
- Result result = _baseDirectory.Target.Read(out long entriesRead, new OutBuffer(entryBuffer));
+ Result result = _baseDirectory.Get.Read(out long entriesRead, new OutBuffer(entryBuffer));
context.Memory.Write(bufferPosition, entryBuffer);
context.ResponseData.Write(entriesRead);
@@ -33,7 +34,7 @@ namespace Ryujinx.HLE.HOS.Services.Fs.FileSystemProxy
// GetEntryCount() -> u64
public ResultCode GetEntryCount(ServiceCtx context)
{
- Result result = _baseDirectory.Target.GetEntryCount(out long entryCount);
+ Result result = _baseDirectory.Get.GetEntryCount(out long entryCount);
context.ResponseData.Write(entryCount);
@@ -44,7 +45,7 @@ namespace Ryujinx.HLE.HOS.Services.Fs.FileSystemProxy
{
if (isDisposing)
{
- _baseDirectory?.Dispose();
+ _baseDirectory.Destroy();
}
}
}