This bug happens in dash too (I assume it's "pungets" counter not being reset on errors): ---------- Forwarded message --------- From: Sergey Zakharchenko <szakharchenko@xxxxxxxxxxxxxxxxxxx> Date: Thu, Oct 29, 2020 at 8:00 AM Subject: Busybox ash buffering-related issue in error handling To: Denys Vlasenko <vda.linux@xxxxxxxxxxxxxx> It appears that, in the interactive shell, the input buffer has 1 last character remaining after some syntax errors are handled. The next command is interpreted with that character prepended, e.g.: $ ;l ash: syntax error: unexpected ";" $ s [ls output] Expected output for reference: $ ;l sh: 1: Syntax error: ";" unexpected $ s sh: 1: s: not found Similarly, an input of ;# makes the next command be treated as a comment and not executed. I'm observing this on x86-64 112453acf24520b4655f9f36da41d8ac591b1a60, with default options, but it's the same on earlier versions with different options and a different platform so it's not new. Best regards, -- Sergey Zakharchenko Digital Loggers, Inc.