diff options
| author | bunnei <bunneidev@gmail.com> | 2021-01-16 00:25:29 -0800 |
|---|---|---|
| committer | bunnei <bunneidev@gmail.com> | 2021-01-28 21:42:26 -0800 |
| commit | eb3a02a3fdbf1e9e2ed85da7a673872757543ed0 (patch) | |
| tree | 3bfe09f91736044f8187af6df737f61012e55801 /src/core/hle/kernel/handle_table.cpp | |
| parent | 3cefddbb4763cc2dfd9e6fb154e546d454f4043f (diff) | |
core: hle: kernel: object: Implement Finalize() virtual method.
Diffstat (limited to 'src/core/hle/kernel/handle_table.cpp')
| -rw-r--r-- | src/core/hle/kernel/handle_table.cpp | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/core/hle/kernel/handle_table.cpp b/src/core/hle/kernel/handle_table.cpp index 10a4e05100..1a2fa9cd83 100644 --- a/src/core/hle/kernel/handle_table.cpp +++ b/src/core/hle/kernel/handle_table.cpp @@ -89,6 +89,10 @@ ResultCode HandleTable::Close(Handle handle) { const u16 slot = GetSlot(handle); + if (objects[slot].use_count() == 1) { + objects[slot]->Finalize(); + } + objects[slot] = nullptr; generations[slot] = next_free_slot; |
