diff --git a/runtime/src/wup028_adapter.cpp b/runtime/src/wup028_adapter.cpp index c6babba..4331386 100644 --- a/runtime/src/wup028_adapter.cpp +++ b/runtime/src/wup028_adapter.cpp @@ -387,6 +387,7 @@ bool Read(std::array& statuses) { bool SetRumble(uint32_t port, bool enabled) { if (port >= g_rumble.size() || !g_connected.load(std::memory_order_acquire)) return false; std::lock_guard lock(g_mutex); + if (!g_connected.load(std::memory_order_acquire) || g_statuses[port].err != PAD_ERR_NONE) return false; g_rumble[port] = enabled ? 1 : 0; return true; }