diff --git a/src/main.rs b/src/main.rs
index fd71e352900234900e267bd9b33e59ac6b69f57b..116df0e1b913376577e836a3482d2aed4f2f5b73 100644
--- a/src/main.rs
+++ b/src/main.rs
@@ -154,10 +154,10 @@ fn main_run(args: args::Run) -> ! {
                 drop(from_parent);
                 drop(to_parent);
 
-                let status = waitpid(child, None);
-
                 let msg = from_child.recv();
 
+                let status = waitpid(child, None);
+
                 // Restore termios configuration as planned
                 if let Some(tcattr) = tcattr.as_ref() {
                     tcsetattr(0, TCSADRAIN, tcattr).unwrap();