diff --git a/drivers/graphics/ihdgd/src/main.rs b/drivers/graphics/ihdgd/src/main.rs index d2a2a458a3..02451ba719 100644 --- a/drivers/graphics/ihdgd/src/main.rs +++ b/drivers/graphics/ihdgd/src/main.rs @@ -35,7 +35,7 @@ fn daemon(daemon: daemon::Daemon, mut pcid_handle: PciFunctionHandle) -> ! { let irq_file = pci_allocate_interrupt_vector(&mut pcid_handle, "ihdgd"); - let mut inputd_display_handle = DisplayHandle::new(format!("ihdg.{}", name)).unwrap(); + let mut inputd_display_handle = DisplayHandle::new(format!("display.ihdg.{}", name)).unwrap(); let mut scheme = GraphicsScheme::new(device, format!("display.ihdg.{}", name)); diff --git a/drivers/graphics/vesad/src/main.rs b/drivers/graphics/vesad/src/main.rs index ac87e0b9db..5b3fc7e34c 100644 --- a/drivers/graphics/vesad/src/main.rs +++ b/drivers/graphics/vesad/src/main.rs @@ -84,7 +84,7 @@ fn daemon(daemon: daemon::Daemon) -> ! { }; } - let mut inputd_display_handle = DisplayHandle::new_early("vesa").unwrap(); + let mut inputd_display_handle = DisplayHandle::new_early("display.vesa").unwrap(); let mut scheme = GraphicsScheme::new(FbAdapter { framebuffers }, "display.vesa".to_owned()); diff --git a/drivers/graphics/virtio-gpud/src/scheme.rs b/drivers/graphics/virtio-gpud/src/scheme.rs index 9e05cf3db5..fc9b3ff3db 100644 --- a/drivers/graphics/virtio-gpud/src/scheme.rs +++ b/drivers/graphics/virtio-gpud/src/scheme.rs @@ -571,7 +571,7 @@ impl<'a> GpuScheme { }; let scheme = GraphicsScheme::new(adapter, "display.virtio-gpu".to_owned()); - let handle = DisplayHandle::new("virtio-gpu").unwrap(); + let handle = DisplayHandle::new("display.virtio-gpu").unwrap(); Ok((scheme, handle)) } } diff --git a/drivers/inputd/src/lib.rs b/drivers/inputd/src/lib.rs index 0a8fffa2c2..c2015ae646 100644 --- a/drivers/inputd/src/lib.rs +++ b/drivers/inputd/src/lib.rs @@ -153,13 +153,13 @@ pub struct KeymapActivate { pub struct DisplayHandle(File); impl DisplayHandle { - pub fn new>(device_name: S) -> io::Result { - let path = format!("/scheme/input/handle/display/{}", device_name.into()); + pub fn new>(scheme_name: S) -> io::Result { + let path = format!("/scheme/input/handle/{}", scheme_name.into()); Ok(Self(File::open(path)?)) } - pub fn new_early>(device_name: S) -> io::Result { - let path = format!("/scheme/input/handle_early/display/{}", device_name.into()); + pub fn new_early>(scheme_name: S) -> io::Result { + let path = format!("/scheme/input/handle_early/{}", scheme_name.into()); Ok(Self(File::open(path)?)) } diff --git a/drivers/inputd/src/main.rs b/drivers/inputd/src/main.rs index 1120ddc404..f5501137a1 100644 --- a/drivers/inputd/src/main.rs +++ b/drivers/inputd/src/main.rs @@ -209,7 +209,7 @@ impl SchemeSync for InputScheme { } } "handle" | "handle_early" => { - let display = path_parts.collect::>().join("."); + let display = path_parts.next().ok_or(SysError::new(EINVAL))?; let needs_handoff = match command { "handle_early" => self.display.is_none(), @@ -227,7 +227,7 @@ impl SchemeSync for InputScheme { if needs_handoff { self.has_new_events = true; - self.display = Some(display.clone()); + self.display = Some(display.to_owned()); for handle in self.handles.values_mut() { match handle { @@ -258,7 +258,7 @@ impl SchemeSync for InputScheme { vec![] }, notified: false, - device: display, + device: display.to_owned(), is_earlyfb: command == "handle_early", } }