summaryrefslogtreecommitdiff
path: root/src/client.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/client.rs')
-rw-r--r--src/client.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/client.rs b/src/client.rs
index 1e2edc4..3fcf78f 100644
--- a/src/client.rs
+++ b/src/client.rs
@@ -57,14 +57,15 @@ pub async fn handle_client(
}
if b == b'\n' && prev_is_cr {
if i < msg.len() {
- i -= 2; // remove CRLF from reported message string
+ i -= 1; // remove CRLF from reported message string
}
break;
}
i += 1;
prev_is_cr = b == b'\r';
}
- let msg = match std::str::from_utf8(&msg[..i]) {
+ let msg = if i < msg.len() { &msg[..i] } else { &msg };
+ let msg = match std::str::from_utf8(msg) {
Ok(s) => s,
Err(why) => {
warn!(