From 8f9763fa525b35a35d1186713bb0d59494edc4dd Mon Sep 17 00:00:00 2001 From: Tom Schuster Date: Sat, 12 Apr 2025 23:24:49 +0200 Subject: [PATCH] Fix the implementation of Display and TryFrom<&str> for Teletype Fixes #7732 and fixes #7733 --- src/uucore/src/lib/features/tty.rs | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/src/uucore/src/lib/features/tty.rs b/src/uucore/src/lib/features/tty.rs index 608de78b9..6854ba164 100644 --- a/src/uucore/src/lib/features/tty.rs +++ b/src/uucore/src/lib/features/tty.rs @@ -20,9 +20,9 @@ pub enum Teletype { impl Display for Teletype { fn fmt(&self, f: &mut Formatter) -> fmt::Result { match self { - Self::Tty(id) => write!(f, "/dev/pts/{id}"), - Self::TtyS(id) => write!(f, "/dev/tty{id}"), - Self::Pts(id) => write!(f, "/dev/ttyS{id}"), + Self::Tty(id) => write!(f, "/dev/tty{id}"), + Self::TtyS(id) => write!(f, "/dev/ttyS{id}"), + Self::Pts(id) => write!(f, "/dev/pts/{id}"), Self::Unknown => write!(f, "?"), } } @@ -32,10 +32,6 @@ impl TryFrom for Teletype { type Error = (); fn try_from(value: String) -> Result { - if value == "?" { - return Ok(Self::Unknown); - } - Self::try_from(value.as_str()) } } @@ -44,6 +40,10 @@ impl TryFrom<&str> for Teletype { type Error = (); fn try_from(value: &str) -> Result { + if value == "?" { + return Ok(Self::Unknown); + } + Self::try_from(PathBuf::from(value)) } }