aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Ryujinx/OsHle/Handles/HDomain.cs2
-rw-r--r--Ryujinx/OsHle/Handles/HSessionObj.cs20
-rw-r--r--Ryujinx/OsHle/Ipc/IpcHandler.cs2
-rw-r--r--Ryujinx/OsHle/Objects/ObjHelper.cs2
4 files changed, 22 insertions, 4 deletions
diff --git a/Ryujinx/OsHle/Handles/HDomain.cs b/Ryujinx/OsHle/Handles/HDomain.cs
index fd252f5d..e781602a 100644
--- a/Ryujinx/OsHle/Handles/HDomain.cs
+++ b/Ryujinx/OsHle/Handles/HDomain.cs
@@ -17,7 +17,7 @@ namespace Ryujinx.OsHle.Handles
ObjIds = new IdPool();
}
- public int GenertateObjectId(object Obj)
+ public int GenerateObjectId(object Obj)
{
int Id = ObjIds.GenerateId();
diff --git a/Ryujinx/OsHle/Handles/HSessionObj.cs b/Ryujinx/OsHle/Handles/HSessionObj.cs
index c1e5e41a..d2b2b0d7 100644
--- a/Ryujinx/OsHle/Handles/HSessionObj.cs
+++ b/Ryujinx/OsHle/Handles/HSessionObj.cs
@@ -1,6 +1,8 @@
+using System;
+
namespace Ryujinx.OsHle.Handles
{
- class HSessionObj : HSession
+ class HSessionObj : HSession, IDisposable
{
public object Obj { get; private set; }
@@ -8,5 +10,21 @@ namespace Ryujinx.OsHle.Handles
{
this.Obj = Obj;
}
+
+ public void Dispose()
+ {
+ Dispose(true);
+ }
+
+ protected virtual void Dispose(bool Disposing)
+ {
+ if(Disposing && Obj != null)
+ {
+ if(Obj is IDisposable DisposableObj)
+ {
+ DisposableObj.Dispose();
+ }
+ }
+ }
}
} \ No newline at end of file
diff --git a/Ryujinx/OsHle/Ipc/IpcHandler.cs b/Ryujinx/OsHle/Ipc/IpcHandler.cs
index ff90d873..c373d2ce 100644
--- a/Ryujinx/OsHle/Ipc/IpcHandler.cs
+++ b/Ryujinx/OsHle/Ipc/IpcHandler.cs
@@ -212,7 +212,7 @@ namespace Ryujinx.OsHle.Ipc
Ns.Os.Handles.ReplaceData(HndId, Dom);
- return FillResponse(Response, 0, Dom.GenertateObjectId(Dom));
+ return FillResponse(Response, 0, Dom.GenerateObjectId(Dom));
}
private static IpcMessage IpcDuplicateSessionEx(
diff --git a/Ryujinx/OsHle/Objects/ObjHelper.cs b/Ryujinx/OsHle/Objects/ObjHelper.cs
index e37f5320..bab22203 100644
--- a/Ryujinx/OsHle/Objects/ObjHelper.cs
+++ b/Ryujinx/OsHle/Objects/ObjHelper.cs
@@ -9,7 +9,7 @@ namespace Ryujinx.OsHle.Objects
{
if (Context.Session is HDomain Dom)
{
- Context.Response.ResponseObjIds.Add(Dom.GenertateObjectId(Obj));
+ Context.Response.ResponseObjIds.Add(Dom.GenerateObjectId(Obj));
}
else
{