diff --git a/src/buf/take.rs b/src/buf/take.rs
index 9995152871e43971e05f8be5fa74c79c96c9148e..edc72377f1fc59d1af1fe22dd94d21848f7bd87d 100644
--- a/src/buf/take.rs
+++ b/src/buf/take.rs
@@ -67,7 +67,7 @@ impl<T: MutBuf> MutBuf for Take<T> {
         cmp::min(self.inner.remaining(), self.limit)
     }
 
-    fn mut_bytes<'a>(&'a mut self) -> &'a mut [u8] {
+    unsafe fn mut_bytes<'a>(&'a mut self) -> &'a mut [u8] {
         &mut self.inner.mut_bytes()[..self.limit]
     }