diff --git a/tokio/src/io/util/take.rs b/tokio/src/io/util/take.rs index d73512bdfaf..df2f61b9e60 100644 --- a/tokio/src/io/util/take.rs +++ b/tokio/src/io/util/take.rs @@ -84,11 +84,10 @@ impl AsyncRead for Take { return Poll::Ready(Ok(())); } - let buf_ptr = buf.filled().as_ptr(); - let me = self.project(); let mut b = buf.take(*me.limit_ as usize); + let buf_ptr = b.filled().as_ptr(); ready!(me.inner.poll_read(cx, &mut b))?; assert_eq!(b.filled().as_ptr(), buf_ptr);