diff --git a/src/backup/dynamic_index.rs b/src/backup/dynamic_index.rs index 54561205..1619d8db 100644 --- a/src/backup/dynamic_index.rs +++ b/src/backup/dynamic_index.rs @@ -194,7 +194,7 @@ impl IndexFile for DynamicIndexReader { if pos >= self.index.len() { None } else { - Some(unsafe { std::mem::transmute(self.chunk_digest(pos).as_ptr()) }) + Some(unsafe { &*(self.chunk_digest(pos).as_ptr() as *const [u8; 32]) }) } } diff --git a/src/backup/fixed_index.rs b/src/backup/fixed_index.rs index 5eb7f04a..ceb6fe29 100644 --- a/src/backup/fixed_index.rs +++ b/src/backup/fixed_index.rs @@ -166,7 +166,7 @@ impl IndexFile for FixedIndexReader { if pos >= self.index_length { None } else { - Some(unsafe { std::mem::transmute(self.index.add(pos * 32)) }) + Some(unsafe { &*(self.index.add(pos * 32) as *const [u8; 32]) }) } }