Skip to content

Commit 2daa1b7

Browse files
committed
Trim trailing newline from FormatMessageW
1 parent fb92de7 commit 2daa1b7

File tree

1 file changed

+7
-3
lines changed
  • src/libstd/sys/windows

1 file changed

+7
-3
lines changed

src/libstd/sys/windows/os.rs

Lines changed: 7 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -84,9 +84,13 @@ pub fn error_string(errnum: i32) -> String {
8484
}
8585

8686
let b = buf.iter().position(|&b| b == 0).unwrap_or(buf.len());
87-
let msg = String::from_utf16(&buf[..b]);
88-
match msg {
89-
Ok(msg) => msg,
87+
match String::from_utf16(&buf[..b]) {
88+
Ok(mut msg) => {
89+
// Trim trailing CRLF inserted by FormatMessageW
90+
let len = msg.trim_right().len();
91+
msg.truncate(len);
92+
msg
93+
},
9094
Err(..) => format!("OS Error {} (FormatMessageW() returned \
9195
invalid UTF-16)", errnum),
9296
}

0 commit comments

Comments
 (0)