Skip to content

Commit 5f64c3f

Browse files
committed
fix: don't know why, confused
Signed-off-by: discord9 <[email protected]>
1 parent a21e843 commit 5f64c3f

File tree

3 files changed

+8
-6
lines changed

3 files changed

+8
-6
lines changed

src/net/tcp/stream.rs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -214,8 +214,8 @@ impl TcpStream {
214214
pub fn peek(&self, buf: &mut [u8]) -> io::Result<usize> {
215215
#[cfg(all(windows, feature = "net", feature = "os-poll"))]
216216
{
217-
// self.inner.do_io_and_reregister(|inner| inner.peek(buf))
218-
self.inner.peek(buf)
217+
self.inner.do_io_and_reregister(|inner| inner.peek(buf))
218+
// self.inner.peek(buf)
219219
}
220220
#[cfg(not(all(windows, feature = "net", feature = "os-poll")))]
221221
{

src/sys/windows/mod.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -106,7 +106,7 @@ cfg_io_source! {
106106
let result = f(io);
107107

108108
let is_ok_or_would_block = match &result{
109-
Ok(_) => false,
109+
Ok(_) => true,
110110
Err(e) if e.kind() == io::ErrorKind::WouldBlock => true,
111111
_ => false
112112
};

tests/tcp_stream.rs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -975,8 +975,9 @@ fn peek_ok(){
975975
&mut events,
976976
vec![ExpectEvent::new(ID1, Readiness::READABLE)],
977977
);
978-
978+
979979
assert_eq!(stream2.write(&[0]).unwrap(), 1);
980+
// this panic with no event on windows if not re-register after successful peek
980981
expect_events(
981982
&mut poll,
982983
&mut events,
@@ -1006,7 +1007,6 @@ fn peek_would_block(){
10061007
expect_no_events(&mut poll, &mut events);
10071008

10081009
assert_eq!(stream2.write(&[0]).unwrap(), 1);
1009-
// a would block peek also should not remove readable interest
10101010
expect_events(
10111011
&mut poll,
10121012
&mut events,
@@ -1017,7 +1017,9 @@ fn peek_would_block(){
10171017
assert_would_block(stream1.peek(&mut buf));
10181018

10191019
assert_eq!(stream2.write(&[0, 1, 2, 3]).unwrap(), 4);
1020-
// a would block peek also should not remove readable interest
1020+
1021+
// this panic with no event on windows if not re-register after would block peek
1022+
// I don't know why it need to re-register for that to work
10211023
expect_events(
10221024
&mut poll,
10231025
&mut events,

0 commit comments

Comments
 (0)