mirror of
https://github.com/dolphin-emu/dolphin.git
synced 2025-06-15 06:58:37 +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:
@ -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<Core::Device*>& 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<Core::Device*>& 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++));
|
||||
}
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user