about summary refs log tree commit diff
diff options
context:
space:
mode:
authornewpavlov <newpavlov@gmail.com>2019-08-30 17:30:33 +0300
committernewpavlov <newpavlov@gmail.com>2019-08-30 17:30:33 +0300
commit9fd203a01e0fe6fb307809fdfdbfcd3bda350cfc (patch)
treebd7d8326a2a02faf7f555368a24588fd561050b0
parent127311b75efd47a6f54aca49523c050566fc9823 (diff)
downloadrust-9fd203a01e0fe6fb307809fdfdbfcd3bda350cfc.tar.gz
rust-9fd203a01e0fe6fb307809fdfdbfcd3bda350cfc.zip
simplify code
-rw-r--r--src/libstd/sys/wasi/thread.rs17
1 files changed, 12 insertions, 5 deletions
diff --git a/src/libstd/sys/wasi/thread.rs b/src/libstd/sys/wasi/thread.rs
index 987bf758083..28a504f1979 100644
--- a/src/libstd/sys/wasi/thread.rs
+++ b/src/libstd/sys/wasi/thread.rs
@@ -46,11 +46,18 @@ impl Thread {
             type_: wasi::EVENTTYPE_CLOCK,
             u: wasi::raw::__wasi_subscription_u { clock: clock },
         }];
-        let mut out: [wasi::Event; 1] = [unsafe { mem::zeroed() }];
-        let n = unsafe { wasi::poll_oneoff(&in_, &mut out).unwrap() };
-        let wasi::Event { userdata, error, type_, .. } = out[0];
-        match (n, userdata, error) {
-            (1, CLOCK_ID, 0) if type_ == wasi::EVENTTYPE_CLOCK => {}
+        let (res, event) = unsafe {
+            let mut out: [wasi::Event; 1] = mem::zeroed();
+            let res = wasi::poll_oneoff(&in_, &mut out);
+            (res, out[0])
+        };
+        match (res, event) {
+            (Ok(1), wasi::Event {
+                userdata: CLOCK_ID,
+                error: 0,
+                type_: wasi::EVENTTYPE_CLOCK,
+                ..
+            }) => {}
             _ => panic!("thread::sleep(): unexpected result of poll_oneoff"),
         }
     }