From e4bc4a4ecbfa23dc2172e337ad01defe51fb4b62 Mon Sep 17 00:00:00 2001 From: Phi1ow <331962174+Phi1ow@users.noreply.github.com> Date: Mon, 5 Oct 2026 00:48:45 +0200 Subject: [PATCH] fix(pad): check the handle and keep the dead band throwing when enabled Per review: scePadSetAngularVelocityDeadbandState now returns PAD_ERROR_INVALID_HANDLE for a handle other than PAD_HANDLE, like the neighbouring setters. Enabling the dead band still throws, because the angular-velocity reading path does not apply the filter (that would change input, not UI, so it is not a silent stub); disabling it succeeds, which matches the unfiltered readings. The test checks the disabled call, the bad handle, and no longer asserts the enabled path. --- core/libs/prx/libScePad/Export.cpp | 6 +++--- core/libs/tests/GuestPad.cpp | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/core/libs/prx/libScePad/Export.cpp b/core/libs/prx/libScePad/Export.cpp index e0a70c6f8..f2437a5a5 100644 --- a/core/libs/prx/libScePad/Export.cpp +++ b/core/libs/prx/libScePad/Export.cpp @@ -171,9 +171,9 @@ int APS5_VABI scePadResetOrientation(int handle) { } int APS5_VABI scePadSetAngularVelocityDeadbandState(int handle, bool enable) { - (void)handle; - (void)enable; - return 0; + if (handle != PAD_HANDLE) return PAD_ERROR_INVALID_HANDLE; + if (enable) NotImplemented_nid_no_patch(__func__); + return PAD_OK; } int APS5_VABI scePadSetLightBar(int handle, const PadLightBarParam* param) { diff --git a/core/libs/tests/GuestPad.cpp b/core/libs/tests/GuestPad.cpp index 20aacc302..8abd4f04f 100644 --- a/core/libs/tests/GuestPad.cpp +++ b/core/libs/tests/GuestPad.cpp @@ -61,6 +61,6 @@ int main() { Require(scePadClose_nid_postfix(handle) == 0); Require(scePadGetHandle(user, 0, 0) == noHandle); Require(scePadSetVibrationTriggerEffectWeakWhileEmbeddedMicInUse(true) == 0); - Require(scePadSetAngularVelocityDeadbandState(handle, true) == 0); Require(scePadSetAngularVelocityDeadbandState(handle, false) == 0); + Require(scePadSetAngularVelocityDeadbandState(handle + 1, false) == PAD_ERROR_INVALID_HANDLE); }