From bc3aa9467ae1e2d0ea1727093af9b0af14965e69 Mon Sep 17 00:00:00 2001 From: mat <27899617+mat-1@users.noreply.github.com> Date: Fri, 7 Oct 2022 20:12:36 -0500 Subject: Replace impl Read with Cursor<&[u8]> (#26) * Start getting rid of Cursor * try to make the tests pass and fail * make the tests pass * remove unused uses * fix clippy warnings * fix potential OOM exploits * fix OOM in az-nbt * fix nbt benchmark * fix a test * start replacing it with Cursor> * wip * fix all the issues * fix all tests * fix nbt benchmark * fix warnings --- azalea-core/src/resource_location.rs | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) (limited to 'azalea-core/src/resource_location.rs') diff --git a/azalea-core/src/resource_location.rs b/azalea-core/src/resource_location.rs index 4c0764e5..5f8dcea1 100755 --- a/azalea-core/src/resource_location.rs +++ b/azalea-core/src/resource_location.rs @@ -1,7 +1,7 @@ //! A resource, like minecraft:stone use azalea_buf::{BufReadError, McBufReadable, McBufWritable}; -use std::io::{Read, Write}; +use std::io::{Cursor, Write}; #[derive(Hash, Clone, PartialEq, Eq)] pub struct ResourceLocation { @@ -46,7 +46,7 @@ impl std::fmt::Debug for ResourceLocation { } impl McBufReadable for ResourceLocation { - fn read_from(buf: &mut impl Read) -> Result { + fn read_from(buf: &mut Cursor<&[u8]>) -> Result { let location_string = String::read_from(buf)?; ResourceLocation::new(&location_string) } @@ -59,8 +59,6 @@ impl McBufWritable for ResourceLocation { #[cfg(test)] mod tests { - use std::io::Cursor; - use super::*; #[test] @@ -96,7 +94,7 @@ mod tests { .write_into(&mut buf) .unwrap(); - let mut buf = Cursor::new(buf); + let mut buf = &mut &buf[..]; assert_eq!( ResourceLocation::read_from(&mut buf).unwrap(), -- cgit v1.2.3