aboutsummaryrefslogtreecommitdiff
path: root/src/core/hle/service/hid/controllers
diff options
context:
space:
mode:
authorZach Hilman <zachhilman@gmail.com>2018-12-28 18:20:29 -0500
committerZach Hilman <zachhilman@gmail.com>2018-12-28 18:20:29 -0500
commitcb930c4b5a3f8f3931ba93ef35d4000558ffa79e (patch)
treeb897717a33fc0ba28134be25a9ba52e84b21d122 /src/core/hle/service/hid/controllers
parentef4c4e239da8e5771f61bf079eae25b28cbd0318 (diff)
web_browser: Add bounds checking to applet interface
Diffstat (limited to 'src/core/hle/service/hid/controllers')
-rw-r--r--src/core/hle/service/hid/controllers/npad.cpp6
-rw-r--r--src/core/hle/service/hid/controllers/npad.h2
2 files changed, 3 insertions, 5 deletions
diff --git a/src/core/hle/service/hid/controllers/npad.cpp b/src/core/hle/service/hid/controllers/npad.cpp
index 2829f64e9..04c8c35a8 100644
--- a/src/core/hle/service/hid/controllers/npad.cpp
+++ b/src/core/hle/service/hid/controllers/npad.cpp
@@ -638,10 +638,8 @@ void Controller_NPad::ClearAllControllers() {
});
}
-u32 Controller_NPad::GetPressState() {
- const auto res = press_state;
- press_state = 0;
- return res;
+u32 Controller_NPad::GetAndResetPressState() {
+ return std::exchange(press_state, 0);
}
bool Controller_NPad::IsControllerSupported(NPadControllerType controller) const {
diff --git a/src/core/hle/service/hid/controllers/npad.h b/src/core/hle/service/hid/controllers/npad.h
index 6906d9ffb..106cf58c8 100644
--- a/src/core/hle/service/hid/controllers/npad.h
+++ b/src/core/hle/service/hid/controllers/npad.h
@@ -126,7 +126,7 @@ public:
// Logical OR for all buttons presses on all controllers
// Specifically for cheat engine and other features.
- u32 GetPressState();
+ u32 GetAndResetPressState();
static std::size_t NPadIdToIndex(u32 npad_id);
static u32 IndexToNPad(std::size_t index);