From fd29e5c4cc26cd853a03ac7b0e08b367b7070c84 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Lam?= Date: Sun, 12 Jun 2016 17:08:04 +0200 Subject: 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. --- Source/Core/InputCommon/ControllerInterface/Xlib/XInput2.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'Source/Core/InputCommon/ControllerInterface/Xlib/XInput2.cpp') diff --git a/Source/Core/InputCommon/ControllerInterface/Xlib/XInput2.cpp b/Source/Core/InputCommon/ControllerInterface/Xlib/XInput2.cpp index 79b86a487d..d46f1cf4f6 100644 --- a/Source/Core/InputCommon/ControllerInterface/Xlib/XInput2.cpp +++ b/Source/Core/InputCommon/ControllerInterface/Xlib/XInput2.cpp @@ -46,7 +46,7 @@ namespace ciface namespace XInput2 { // This function will add zero or more KeyboardMouse objects to devices. -void Init(std::vector& devices, void* const hwnd) +void Init(void* const hwnd) { Display* dpy = XOpenDisplay(nullptr); @@ -78,8 +78,8 @@ void Init(std::vector& 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); -- cgit v1.2.3