From 62e05bb3b34e2387a5fad5e849a2bd6d4f1f4d7f Mon Sep 17 00:00:00 2001 From: Dietmar Maurer Date: Sat, 5 Oct 2019 11:45:20 +0200 Subject: [PATCH] src/client/remote_chunk_reader.rs: pass reference to download_chunk Make sure we do not move data around. --- src/client/remote_chunk_reader.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/client/remote_chunk_reader.rs b/src/client/remote_chunk_reader.rs index 7fd700cf..f56e93c4 100644 --- a/src/client/remote_chunk_reader.rs +++ b/src/client/remote_chunk_reader.rs @@ -33,7 +33,7 @@ impl ReadChunk for RemoteChunkReader { fn read_chunk(&mut self, digest:&[u8; 32]) -> Result, Error> { - let writer = Vec::with_capacity(4*1024*1024); + let mut chunk_data = Vec::with_capacity(4*1024*1024); if let Some(raw_data) = self.cache.get(digest) { return Ok(raw_data.to_vec()); @@ -41,7 +41,7 @@ impl ReadChunk for RemoteChunkReader { let use_cache = self.cache_hint.contains_key(digest); - let chunk_data = futures::executor::block_on(self.client.download_chunk(&digest, writer))?; + futures::executor::block_on(self.client.download_chunk(&digest, &mut chunk_data))?; let chunk = DataChunk::from_raw(chunk_data, *digest)?; chunk.verify_crc()?;