From ce7e7d9de79ab173585a365c5514054098e5f12b Mon Sep 17 00:00:00 2001 From: Shane Pearman Date: Fri, 25 Jun 2021 10:53:30 -0700 Subject: [PATCH] fix runtime error in deflate context z_stream zeroed mem initialization --- src/deflate/context.rs | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/deflate/context.rs b/src/deflate/context.rs index 2fa2e23..65e5322 100644 --- a/src/deflate/context.rs +++ b/src/deflate/context.rs @@ -67,7 +67,10 @@ impl Compressor { debug_assert!(window_bits <= 15, "Received too large window size."); unsafe { - let mut stream: Box = Box::new(mem::zeroed()); + let mut stream: Box = Box::new({ + let maybe = mem::MaybeUninit::::zeroed(); + maybe.assume_init() + }); let result = ffi::deflateInit2_( stream.as_mut(), 9, @@ -139,7 +142,10 @@ impl Decompressor { debug_assert!(window_bits <= 15, "Received too large window size."); unsafe { - let mut stream: Box = Box::new(mem::zeroed()); + let mut stream: Box = Box::new({ + let maybe = mem::MaybeUninit::::zeroed(); + maybe.assume_init() + }); let result = ffi::inflateInit2_( stream.as_mut(), -window_bits as c_int,