From 631da86c92227bd601cb0904c09d619feb74ab15 Mon Sep 17 00:00:00 2001
From: Josh Triplett <josh@joshtriplett.org>
Date: Sun, 9 Aug 2020 16:35:24 -0700
Subject: [PATCH] Add W_EXITCODE to construct an exit code

On Linux, `sys/wait.h` defines a `W_EXITCODE` macro to construct an exit
code from a return value and a signal number. Provide an equivalent
function.
---
 src/unix/linux_like/mod.rs | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/unix/linux_like/mod.rs b/src/unix/linux_like/mod.rs
index c5394f69..6593a644 100644
--- a/src/unix/linux_like/mod.rs
+++ b/src/unix/linux_like/mod.rs
@@ -1254,6 +1254,10 @@ f! {
         (status & 0x80) != 0
     }
 
+    pub fn W_EXITCODE(ret: ::c_int, sig: ::c_int) -> ::c_int {
+        (ret << 8) | sig
+    }
+
     pub fn QCMD(cmd: ::c_int, type_: ::c_int) -> ::c_int {
         (cmd << 8) | (type_ & 0x00ff)
     }
-- 
GitLab