mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-07-21 05:09:34 -06:00
Input: Improve Controller Interface devices threading
This specific issue was already addressed by https://github.com/dolphin-emu/dolphin/pull/11635 though I felt like there was something more we could do, and wasn't too happy with the likelihood of devices update calls being skipped (due to `m_devices_population_mutex` being locked).
This commit is contained in:
@ -1395,14 +1395,10 @@ void Device::UpdateRumble()
|
||||
QueueReport(OutputReportRumble{});
|
||||
}
|
||||
|
||||
void Device::UpdateInput()
|
||||
Core::DeviceRemoval Device::UpdateInput()
|
||||
{
|
||||
if (!m_wiimote->IsConnected())
|
||||
{
|
||||
g_controller_interface.RemoveDevice(
|
||||
[this](const Core::Device* device) { return device == this; });
|
||||
return;
|
||||
}
|
||||
return Core::DeviceRemoval::Remove;
|
||||
|
||||
UpdateRumble();
|
||||
RunTasks();
|
||||
@ -1413,6 +1409,8 @@ void Device::UpdateInput()
|
||||
ProcessInputReport(report);
|
||||
RunTasks();
|
||||
}
|
||||
|
||||
return Core::DeviceRemoval::Keep;
|
||||
}
|
||||
|
||||
void Device::MotionPlusState::ProcessData(const WiimoteEmu::MotionPlus::DataFormat& data)
|
||||
|
Reference in New Issue
Block a user