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

Merge pull request #5827 from samueltardieu/issue-5826

printf: %c prints the first byte of its argument
This commit is contained in:
Sylvestre Ledru 2024-01-12 00:25:32 +01:00 committed by GitHub
commit edb77b8d59
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 1 deletions

View file

@ -45,7 +45,7 @@ impl<'a, T: Iterator<Item = &'a FormatArgument>> ArgumentIter<'a> for T {
};
match next {
FormatArgument::Char(c) => *c,
FormatArgument::Unparsed(s) => s.chars().next().unwrap_or('\0'),
FormatArgument::Unparsed(s) => s.bytes().next().map_or('\0', char::from),
_ => '\0',
}
}

View file

@ -644,3 +644,8 @@ fn partial_char() {
"printf: warning: bc: character(s) following character constant have been ignored\n",
);
}
#[test]
fn char_as_byte() {
new_ucmd!().args(&["%c", "🙃"]).succeeds().stdout_only("ð");
}