diff --git a/src/crypto/hash.rs b/src/crypto/hash.rs index a9a3d8b9c7f99cd8ae9852eeccc786b719f3235e..f81532c911c4a0bb8781e5d884c2e85981e57f9a 100644 --- a/src/crypto/hash.rs +++ b/src/crypto/hash.rs @@ -153,10 +153,10 @@ impl Hasher { unsafe { let mut len = 0; let r = ffi::EVP_DigestFinal_ex(self.ctx, res.as_mut_ptr(), &mut len); + self.state = Finalized; assert_eq!(len as usize, md_len); assert_eq!(r, 1); } - self.state = Finalized; res } diff --git a/src/crypto/hmac.rs b/src/crypto/hmac.rs index 1b9653c163db72535f8398982d82f326b9ba4ae1..65808e580593e3d5c3e1a309101f32340c05249b 100644 --- a/src/crypto/hmac.rs +++ b/src/crypto/hmac.rs @@ -136,10 +136,10 @@ impl HMAC { unsafe { let mut len = 0; let r = ffi::HMAC_Final(&mut self.ctx, res.as_mut_ptr(), &mut len); + self.state = Finalized; assert_eq!(len as usize, md_len); assert_eq!(r, 1); } - self.state = Finalized; res }