Skip to content

Commit 141728f

Browse files
authored
Rollup merge of #100934 - a1phyr:improve_fmt_PadAdapter, r=Mark-Simulacrum
Remove a panicking branch from `fmt::builders::PadAdapter`
2 parents 395ce34 + 3aa6fe3 commit 141728f

File tree

1 file changed

+4
-14
lines changed

1 file changed

+4
-14
lines changed

library/core/src/fmt/builders.rs

+4-14
Original file line numberDiff line numberDiff line change
@@ -28,24 +28,14 @@ impl<'buf, 'state> PadAdapter<'buf, 'state> {
2828
}
2929

3030
impl fmt::Write for PadAdapter<'_, '_> {
31-
fn write_str(&mut self, mut s: &str) -> fmt::Result {
32-
while !s.is_empty() {
31+
fn write_str(&mut self, s: &str) -> fmt::Result {
32+
for s in s.split_inclusive('\n') {
3333
if self.state.on_newline {
3434
self.buf.write_str(" ")?;
3535
}
3636

37-
let split = match s.find('\n') {
38-
Some(pos) => {
39-
self.state.on_newline = true;
40-
pos + 1
41-
}
42-
None => {
43-
self.state.on_newline = false;
44-
s.len()
45-
}
46-
};
47-
self.buf.write_str(&s[..split])?;
48-
s = &s[split..];
37+
self.state.on_newline = s.ends_with('\n');
38+
self.buf.write_str(s)?;
4939
}
5040

5141
Ok(())

0 commit comments

Comments
 (0)