We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
NonZeroU32::new_unchecked
1 parent e4004f4 commit 0d0404bCopy full SHA for 0d0404b
src/wasi.rs
@@ -12,8 +12,12 @@ use core::num::NonZeroU32;
12
use wasi::random_get;
13
14
pub fn getrandom_inner(dest: &mut [u8]) -> Result<(), Error> {
15
- unsafe { random_get(dest.as_mut_ptr(), dest.len()) }.map_err(|e: wasi::Error| {
16
- // convert wasi's Error into getrandom's NonZeroU32 error
17
- NonZeroU32::new(e.raw_error() as u32).unwrap().into()
18
- })
+ unsafe {
+ random_get(dest.as_mut_ptr(), dest.len()).map_err(|e: wasi::Error| {
+ // convert wasi's Error into getrandom's NonZeroU32 error
+ // SAFETY: `wasi::Error` is `NonZeroU16` internally, so `e.raw_error()`
19
+ // will never return 0
20
+ NonZeroU32::new_unchecked(e.raw_error() as u32).into()
21
+ })
22
+ }
23
}
0 commit comments