diff options
Diffstat (limited to 'shared/src/helper.rs')
-rw-r--r-- | shared/src/helper.rs | 8 |
1 files changed, 2 insertions, 6 deletions
diff --git a/shared/src/helper.rs b/shared/src/helper.rs index 65918ad..d91313c 100644 --- a/shared/src/helper.rs +++ b/shared/src/helper.rs @@ -67,16 +67,12 @@ impl ReadWrite for Vec<u8> { } impl ReadWrite for String { fn write(&self, w: &mut dyn Write) -> Result<()> { - w.write_all(&(self.len() as u32).to_be_bytes())?; w.write_all(self.as_bytes())?; Ok(()) } fn read(r: &mut dyn Read) -> Result<Self> { - let mut size = [0; 4]; - r.read_exact(&mut size)?; - let size = u32::from_be_bytes(size); - let mut buf = vec![0; size as usize]; - r.read_exact(&mut buf)?; + let mut buf = Vec::new(); + r.read_to_end(&mut buf)?; Ok(String::from_utf8(buf)?) } } |