about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--library/std/src/sys/pal/wasi/thread.rs3
1 files changed, 1 insertions, 2 deletions
diff --git a/library/std/src/sys/pal/wasi/thread.rs b/library/std/src/sys/pal/wasi/thread.rs
index 3b44f77631f..f5e19f26bfe 100644
--- a/library/std/src/sys/pal/wasi/thread.rs
+++ b/library/std/src/sys/pal/wasi/thread.rs
@@ -192,8 +192,7 @@ pub fn available_parallelism() -> io::Result<NonZero<usize>> {
         if #[cfg(target_feature = "atomics")] {
             match unsafe { libc::sysconf(libc::_SC_NPROCESSORS_ONLN) } {
                 -1 => Err(io::Error::last_os_error()),
-                0 => Err(io::Error::UNKNOWN_THREAD_COUNT),
-                cpus => Ok(unsafe { NonZero::new_unchecked(cpus as usize) }),
+                cpus => NonZero::new(cpus as usize).ok_or(io::Error::UNKNOWN_THREAD_COUNT),
             }
         } else {
             crate::sys::unsupported()