mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-06-10 07:12:54 +02:00
ControllerInterface: Switch to std::shared_ptr
Small cleanup by using std::shared_ptr and getting rid of ciface.Devices() which just returned the m_devices (which defeats the point of making m_devices protected). Incidentally, this should make the code safer when we have different threads accessing devices in the future (for hotplug?). A lot of code use Device references directly so there is no easy way to remove FindDevice() and make those unique_ptrs.
This commit is contained in:
@ -58,12 +58,10 @@ void InitJoystick(IDirectInput8* const idi8, HWND hwnd)
|
||||
}
|
||||
}
|
||||
|
||||
Joystick* js = new Joystick(/*&*i, */ js_device, name_counts[joystick.tszInstanceName]++);
|
||||
auto js = std::make_shared<Joystick>(js_device, name_counts[joystick.tszInstanceName]++);
|
||||
// only add if it has some inputs/outputs
|
||||
if (js->Inputs().size() || js->Outputs().size())
|
||||
g_controller_interface.AddDevice(js);
|
||||
else
|
||||
delete js;
|
||||
g_controller_interface.AddDevice(std::move(js));
|
||||
}
|
||||
else
|
||||
{
|
||||
|
Reference in New Issue
Block a user