From 0dbfed597141aea385217478c4d90e66050908a0 Mon Sep 17 00:00:00 2001 From: Gary Yu Date: Tue, 11 Sep 2018 19:14:48 +0800 Subject: [PATCH] return an Err when read return 0 (#1503) * return an Err when read return 0, instead of all zeroed buff without any error --- p2p/src/msg.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/p2p/src/msg.rs b/p2p/src/msg.rs index e5e8ad7d..387bf93b 100644 --- a/p2p/src/msg.rs +++ b/p2p/src/msg.rs @@ -121,7 +121,12 @@ pub fn read_exact( let mut read = 0; loop { match conn.read(buf) { - Ok(0) => break, + Ok(0) => { + return Err(io::Error::new( + io::ErrorKind::ConnectionAborted, + "read_exact", + )); + } Ok(n) => { let tmp = buf; buf = &mut tmp[n..];