mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-06-11 16:49:28 +02:00
ControllerInterface: Don't pass m_devices to the backends
Previously, the devices vector would be passed to all backends. They would then manually push_back to it to add new devices. This was fine but caused issues when trying to add synchronisation. Instead, backends now call AddDevice() to fill m_devices so that it is not accessible from the outside.
This commit is contained in:
@ -46,7 +46,7 @@ namespace ciface
|
||||
namespace XInput2
|
||||
{
|
||||
// This function will add zero or more KeyboardMouse objects to devices.
|
||||
void Init(std::vector<Core::Device*>& devices, void* const hwnd)
|
||||
void Init(void* const hwnd)
|
||||
{
|
||||
Display* dpy = XOpenDisplay(nullptr);
|
||||
|
||||
@ -78,8 +78,8 @@ void Init(std::vector<Core::Device*>& devices, void* const hwnd)
|
||||
if (current_master->use == XIMasterPointer)
|
||||
// Since current_master is a master pointer, its attachment must
|
||||
// be a master keyboard.
|
||||
devices.push_back(new KeyboardMouse((Window)hwnd, xi_opcode, current_master->deviceid,
|
||||
current_master->attachment));
|
||||
g_controller_interface.AddDevice(new KeyboardMouse(
|
||||
(Window)hwnd, xi_opcode, current_master->deviceid, current_master->attachment));
|
||||
}
|
||||
|
||||
XCloseDisplay(dpy);
|
||||
|
Reference in New Issue
Block a user