diff options
Diffstat (limited to 'src/Ryujinx.HLE/HOS/Kernel/Process/KHandleTable.cs')
-rw-r--r-- | src/Ryujinx.HLE/HOS/Kernel/Process/KHandleTable.cs | 27 |
1 files changed, 10 insertions, 17 deletions
diff --git a/src/Ryujinx.HLE/HOS/Kernel/Process/KHandleTable.cs b/src/Ryujinx.HLE/HOS/Kernel/Process/KHandleTable.cs index 6dd7e5b7..21ea6bb2 100644 --- a/src/Ryujinx.HLE/HOS/Kernel/Process/KHandleTable.cs +++ b/src/Ryujinx.HLE/HOS/Kernel/Process/KHandleTable.cs @@ -7,11 +7,9 @@ namespace Ryujinx.HLE.HOS.Kernel.Process { class KHandleTable { - public const int SelfThreadHandle = (0x1ffff << 15) | 0; + public const int SelfThreadHandle = (0x1ffff << 15) | 0; public const int SelfProcessHandle = (0x1ffff << 15) | 1; - private readonly KernelContext _context; - private KHandleEntry[] _table; private KHandleEntry _tableHead; @@ -23,11 +21,6 @@ namespace Ryujinx.HLE.HOS.Kernel.Process private ushort _idCounter; - public KHandleTable(KernelContext context) - { - _context = context; - } - public Result Initialize(uint size) { if (size > 1024) @@ -81,7 +74,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Process _nextFreeEntry = entry.Next; - entry.Obj = obj; + entry.Obj = obj; entry.HandleId = _idCounter; _activeSlotsCount++; @@ -143,7 +136,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Process { KHandleEntry entry = _table[index]; - entry.Obj = null; + entry.Obj = null; entry.Next = _nextFreeEntry; _nextFreeEntry = entry; @@ -154,14 +147,14 @@ namespace Ryujinx.HLE.HOS.Kernel.Process public void SetReservedHandleObj(int handle, KAutoObject obj) { - int index = (handle >> 0) & 0x7fff; + int index = (handle >> 0) & 0x7fff; int handleId = (handle >> 15); lock (_table) { KHandleEntry entry = _table[index]; - entry.Obj = obj; + entry.Obj = obj; entry.HandleId = (ushort)handleId; obj.IncrementReferenceCount(); @@ -177,7 +170,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Process return false; } - int index = (handle >> 0) & 0x7fff; + int index = (handle >> 0) & 0x7fff; int handleId = (handle >> 15); KAutoObject obj = null; @@ -192,7 +185,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Process if ((obj = entry.Obj) != null && entry.HandleId == handleId) { - entry.Obj = null; + entry.Obj = null; entry.Next = _nextFreeEntry; _nextFreeEntry = entry; @@ -214,7 +207,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Process public T GetObject<T>(int handle) where T : KAutoObject { - int index = (handle >> 0) & 0x7fff; + int index = (handle >> 0) & 0x7fff; int handleId = (handle >> 15); lock (_table) @@ -273,7 +266,7 @@ namespace Ryujinx.HLE.HOS.Kernel.Process } entry.Obj.DecrementReferenceCount(); - entry.Obj = null; + entry.Obj = null; entry.Next = _nextFreeEntry; _nextFreeEntry = entry; @@ -282,4 +275,4 @@ namespace Ryujinx.HLE.HOS.Kernel.Process } } } -}
\ No newline at end of file +} |