diff --git a/drivers/graphics/fbcond/src/text.rs b/drivers/graphics/fbcond/src/text.rs index 58a34b0f73..fbf03f89ba 100644 --- a/drivers/graphics/fbcond/src/text.rs +++ b/drivers/graphics/fbcond/src/text.rs @@ -88,7 +88,11 @@ impl TextScreen { } for &b in buf.iter() { - self.input.push_back(b); + // Translate a bare CR (what the Enter key produces on most keymaps) + // to LF, matching the serial input path (push_input_bytes). Without + // this, line-oriented readers such as a shell's read_line never see + // a completed line from keyboard input and appear to hang. + self.input.push_back(if b == b'\r' { b'\n' } else { b }); } }