1
Fork 0
mirror of https://github.com/RGBCube/uutils-coreutils synced 2025-07-28 11:37:44 +00:00

Merge pull request #2977 from Dr-Emann/echo_octal_nul

echo: Allow echo with escapes to work with `\0`
This commit is contained in:
Terts Diepraam 2022-02-01 20:13:53 +01:00 committed by GitHub
commit 87e582b5e0
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 11 additions and 6 deletions

View file

@ -88,10 +88,7 @@ fn print_escaped(input: &str, mut output: impl Write) -> io::Result<bool> {
start = 0; start = 0;
next next
}), }),
'0' => parse_code(&mut iter, 8, 3, 3).unwrap_or_else(|| { '0' => parse_code(&mut iter, 8, 3, 3).unwrap_or('\0'),
start = 0;
next
}),
_ => { _ => {
start = 0; start = 0;
next next

View file

@ -138,11 +138,19 @@ fn test_escape_short_octal() {
} }
#[test] #[test]
fn test_escape_no_octal() { fn test_escape_nul() {
new_ucmd!() new_ucmd!()
.args(&["-e", "foo\\0 bar"]) .args(&["-e", "foo\\0 bar"])
.succeeds() .succeeds()
.stdout_only("foo\\0 bar\n"); .stdout_only("foo\0 bar\n");
}
#[test]
fn test_escape_octal_invalid_digit() {
new_ucmd!()
.args(&["-e", "foo\\08 bar"])
.succeeds()
.stdout_only("foo\u{0}8 bar\n");
} }
#[test] #[test]