summaryrefslogtreecommitdiffstats
path: root/src/core/hle/kernel/k_writable_event.cpp
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2021-05-08 08:30:17 +0200
committerGitHub <noreply@github.com>2021-05-08 08:30:17 +0200
commitfaa067f175cbf5e916ed75776817f0046e6731c4 (patch)
tree8ab02a72a6e4d6578848c8da2c02af02684aeec7 /src/core/hle/kernel/k_writable_event.cpp
parentMerge pull request #6287 from lioncash/ldr-copy (diff)
parenthle: kernel: KPageTable: CanContain should not be constexpr. (diff)
downloadyuzu-faa067f175cbf5e916ed75776817f0046e6731c4.tar
yuzu-faa067f175cbf5e916ed75776817f0046e6731c4.tar.gz
yuzu-faa067f175cbf5e916ed75776817f0046e6731c4.tar.bz2
yuzu-faa067f175cbf5e916ed75776817f0046e6731c4.tar.lz
yuzu-faa067f175cbf5e916ed75776817f0046e6731c4.tar.xz
yuzu-faa067f175cbf5e916ed75776817f0046e6731c4.tar.zst
yuzu-faa067f175cbf5e916ed75776817f0046e6731c4.zip
Diffstat (limited to '')
-rw-r--r--src/core/hle/kernel/k_writable_event.cpp18
1 files changed, 13 insertions, 5 deletions
diff --git a/src/core/hle/kernel/k_writable_event.cpp b/src/core/hle/kernel/k_writable_event.cpp
index 25c52edb2..a430e0661 100644
--- a/src/core/hle/kernel/k_writable_event.cpp
+++ b/src/core/hle/kernel/k_writable_event.cpp
@@ -8,20 +8,28 @@
namespace Kernel {
-KWritableEvent::KWritableEvent(KernelCore& kernel, std::string&& name)
- : Object{kernel, std::move(name)} {}
+KWritableEvent::KWritableEvent(KernelCore& kernel) : KAutoObjectWithSlabHeapAndContainer{kernel} {}
+
KWritableEvent::~KWritableEvent() = default;
-void KWritableEvent::Initialize(KEvent* parent_) {
+void KWritableEvent::Initialize(KEvent* parent_, std::string&& name_) {
parent = parent_;
+ name = std::move(name_);
+ parent->GetReadableEvent().Open();
}
ResultCode KWritableEvent::Signal() {
- return parent->GetReadableEvent()->Signal();
+ return parent->GetReadableEvent().Signal();
}
ResultCode KWritableEvent::Clear() {
- return parent->GetReadableEvent()->Clear();
+ return parent->GetReadableEvent().Clear();
+}
+
+void KWritableEvent::Destroy() {
+ // Close our references.
+ parent->GetReadableEvent().Close();
+ parent->Close();
}
} // namespace Kernel