@ -373,6 +373,10 @@ Result ResourceManager::SendVibrationValue(u64 aruid,
device = GetNSVibrationDevice(handle);
}
if (device != nullptr) {
// Prevent sending vibrations to an inactive vibration handle
if (!device->IsActive()) {
return ResultSuccess;
result = device->SendVibrationValue(value);
return result;
@ -23,6 +23,10 @@ Result NpadVibrationBase::Deactivate() {
bool NpadVibrationBase::IsActive() const {
return ref_counter > 0;
bool NpadVibrationBase::IsVibrationMounted() const {
return is_mounted;
@ -21,6 +21,7 @@ public:
virtual Result Activate();
virtual Result Deactivate();
bool IsActive() const;
bool IsVibrationMounted() const;
protected: