summaryrefslogtreecommitdiff
path: root/Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp')
-rw-r--r--Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp13
1 files changed, 8 insertions, 5 deletions
diff --git a/Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp b/Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp
index d3f8f5fd36..bee0c44a02 100644
--- a/Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp
+++ b/Source/Core/InputCommon/ControllerInterface/evdev/evdev.cpp
@@ -141,10 +141,15 @@ static void StopHotplugThread()
void Init()
{
s_devnode_name_map.clear();
+ PopulateDevices();
+ StartHotplugThread();
+}
- // During initialization we use udev to iterate over all /dev/input/event* devices.
- // Note: the Linux kernel is currently limited to just 32 event devices. If this ever
- // changes, hopefully udev will take care of this.
+void PopulateDevices()
+{
+ // We use udev to iterate over all /dev/input/event* devices.
+ // Note: the Linux kernel is currently limited to just 32 event devices. If
+ // this ever changes, hopefully udev will take care of this.
udev* udev = udev_new();
_assert_msg_(PAD, udev != nullptr, "Couldn't initialize libudev.");
@@ -182,8 +187,6 @@ void Init()
}
udev_enumerate_unref(enumerate);
udev_unref(udev);
-
- StartHotplugThread();
}
void Shutdown()