diff options
| author | bunnei <bunneidev@gmail.com> | 2021-04-09 22:42:23 -0700 |
|---|---|---|
| committer | bunnei <bunneidev@gmail.com> | 2021-05-05 16:40:51 -0700 |
| commit | 89edbe8aa20d278d6f2c5ab735163f0d96ff88d2 (patch) | |
| tree | 568023bd7dbb880730c2cbbcbafe025045fe2f7b /src/core/hle/service/hid/controllers/npad.cpp | |
| parent | b6156e735cd78d4b7863491ae6bdc63e44404b73 (diff) | |
hle: kernel: Refactor several threads/events/sharedmemory to use slab heaps.
Diffstat (limited to 'src/core/hle/service/hid/controllers/npad.cpp')
| -rw-r--r-- | src/core/hle/service/hid/controllers/npad.cpp | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/src/core/hle/service/hid/controllers/npad.cpp b/src/core/hle/service/hid/controllers/npad.cpp index 753875d6e..77768ca7d 100644 --- a/src/core/hle/service/hid/controllers/npad.cpp +++ b/src/core/hle/service/hid/controllers/npad.cpp @@ -253,8 +253,7 @@ void Controller_NPad::InitNewlyAddedController(std::size_t controller_idx) { void Controller_NPad::OnInit() { auto& kernel = system.Kernel(); for (std::size_t i = 0; i < styleset_changed_events.size(); ++i) { - styleset_changed_events[i] = std::make_unique<Kernel::KEvent>(kernel); - Kernel::KAutoObject::Create(styleset_changed_events[i].get()); + styleset_changed_events[i] = Kernel::KEvent::Create(kernel); styleset_changed_events[i]->Initialize(fmt::format("npad:NpadStyleSetChanged_{}", i)); } @@ -341,6 +340,11 @@ void Controller_NPad::OnRelease() { VibrateControllerAtIndex(npad_idx, device_idx, {}); } } + + for (std::size_t i = 0; i < styleset_changed_events.size(); ++i) { + styleset_changed_events[i]->Close(); + styleset_changed_events[i] = nullptr; + } } void Controller_NPad::RequestPadStateUpdate(u32 npad_id) { |
