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/Pipes/Pipes.cpp | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'Source/Core/InputCommon/ControllerInterface/Pipes/Pipes.cpp') diff --git a/Source/Core/InputCommon/ControllerInterface/Pipes/Pipes.cpp b/Source/Core/InputCommon/ControllerInterface/Pipes/Pipes.cpp index 95bdcc4da2..fc89d8a1e6 100644 --- a/Source/Core/InputCommon/ControllerInterface/Pipes/Pipes.cpp +++ b/Source/Core/InputCommon/ControllerInterface/Pipes/Pipes.cpp @@ -17,6 +17,7 @@ #include "Common/FileUtil.h" #include "Common/MathUtil.h" #include "Common/StringUtil.h" +#include "InputCommon/ControllerInterface/ControllerInterface.h" #include "InputCommon/ControllerInterface/Pipes/Pipes.h" namespace ciface @@ -40,7 +41,7 @@ static double StringToDouble(const std::string& text) return result; } -void Init(std::vector& devices) +void Init() { // Search the Pipes directory for files that we can open in read-only, // non-blocking mode. The device name is the virtual name of the file. @@ -60,7 +61,7 @@ void Init(std::vector& devices) int fd = open(child.physicalName.c_str(), O_RDONLY | O_NONBLOCK); if (fd < 0) continue; - devices.push_back(new PipeDevice(fd, child.virtualName, found++)); + g_controller_interface.AddDevice(new PipeDevice(fd, child.virtualName, found++)); } } -- cgit v1.2.3