| Index: ui/events/ozone/device/udev/device_manager_udev.cc
|
| diff --git a/ui/events/ozone/device/udev/device_manager_udev.cc b/ui/events/ozone/device/udev/device_manager_udev.cc
|
| index 74e50997265b6f5aef539db03f3729761e6a7f44..47244a46964f5dafa645f0ebf3a3bb2b27809922 100644
|
| --- a/ui/events/ozone/device/udev/device_manager_udev.cc
|
| +++ b/ui/events/ozone/device/udev/device_manager_udev.cc
|
| @@ -78,10 +78,16 @@ scoped_udev_monitor UdevCreateMonitor(struct udev* udev) {
|
|
|
| } // namespace
|
|
|
| -DeviceManagerUdev::DeviceManagerUdev()
|
| - : udev_(UdevCreate()),
|
| - monitor_(UdevCreateMonitor(udev_.get())) {
|
| +DeviceManagerUdev::DeviceManagerUdev() : udev_(UdevCreate()) {
|
| +}
|
| +
|
| +DeviceManagerUdev::~DeviceManagerUdev() {
|
| +}
|
|
|
| +void DeviceManagerUdev::CreateMonitor() {
|
| + if (monitor_)
|
| + return;
|
| + monitor_ = UdevCreateMonitor(udev_.get());
|
| if (monitor_) {
|
| int fd = udev_monitor_get_fd(monitor_.get());
|
| CHECK_GT(fd, 0);
|
| @@ -90,9 +96,9 @@ DeviceManagerUdev::DeviceManagerUdev()
|
| }
|
| }
|
|
|
| -DeviceManagerUdev::~DeviceManagerUdev() {}
|
| -
|
| void DeviceManagerUdev::ScanDevices(DeviceEventObserver* observer) {
|
| + CreateMonitor();
|
| +
|
| scoped_udev_enumerate enumerate(udev_enumerate_new(udev_.get()));
|
| if (!enumerate)
|
| return;
|
|
|