diff options
| author | Charles Lombardo <clombardo169@gmail.com> | 2024-01-15 13:50:58 -0500 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-01-15 13:50:58 -0500 |
| commit | b6e1736bc3cf6b05a4ca6a75fc671c1a555cefbd (patch) | |
| tree | 9977b279f22dba2f73944f6ea99453f1ba3319e9 /src/core/hle/kernel/k_process.cpp | |
| parent | 31331b7b5f72599f14a004e190f697d9141b38be (diff) | |
| parent | b31c464b901446d11a737c5ee79fd2a5f7f88a6b (diff) | |
Merge pull request #12611 from liamwhite/resource-management-is-hard
kernel: fix resource management issues
Diffstat (limited to 'src/core/hle/kernel/k_process.cpp')
| -rw-r--r-- | src/core/hle/kernel/k_process.cpp | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/core/hle/kernel/k_process.cpp b/src/core/hle/kernel/k_process.cpp index 068e71dffd..ae332a5506 100644 --- a/src/core/hle/kernel/k_process.cpp +++ b/src/core/hle/kernel/k_process.cpp @@ -171,6 +171,12 @@ void KProcess::Finalize() { m_resource_limit->Close(); } + // Clear expensive resources, as the destructor is not called for guest objects. + for (auto& interface : m_arm_interfaces) { + interface.reset(); + } + m_exclusive_monitor.reset(); + // Perform inherited finalization. KSynchronizationObject::Finalize(); } |
