summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Bercot <ska-skaware@skarnet.org>2015-02-19 04:12:02 +0000
committerLaurent Bercot <ska-skaware@skarnet.org>2015-02-19 04:12:02 +0000
commit73783574792a8dc9538b0e20cd61f3177124f897 (patch)
tree62bea532a8d02da0f12a40ee187122bc95444f75
parent9a3e10869c7581543aa7fc37b44e25cbba895f4b (diff)
downloadskalibs-73783574792a8dc9538b0e20cd61f3177124f897.tar.xz
- Add wait_estatus()
- version: rc for 2.3.1.0
-rw-r--r--doc/index.html2
-rw-r--r--doc/upgrade.html7
-rw-r--r--package/info2
-rw-r--r--src/include/skalibs/djbunix.h3
4 files changed, 11 insertions, 3 deletions
diff --git a/doc/index.html b/doc/index.html
index f17f970..3f1bf5c 100644
--- a/doc/index.html
+++ b/doc/index.html
@@ -59,7 +59,7 @@ with a standard C development environment </li>
<h3> Download </h3>
<ul>
- <li> The current released version of skalibs is <a href="skalibs-2.3.0.1.tar.gz">2.3.0.1</a>. </li>
+ <li> The current released version of skalibs is <a href="skalibs-2.3.1.0.tar.gz">2.3.1.0</a>. </li>
<li> Alternatively, you can checkout a copy of the skalibs git repository:
<pre> git clone git://git.skarnet.org/skalibs </pre> </li>
</ul>
diff --git a/doc/upgrade.html b/doc/upgrade.html
index f30a856..74215bf 100644
--- a/doc/upgrade.html
+++ b/doc/upgrade.html
@@ -17,6 +17,13 @@
<h1> What has changed in skalibs </h1>
+<h2> in 2.3.1.0 </h2>
+
+<ul>
+ <li> wait_status() now returns 256 + signal number when WIFSIGNALED(). </li>
+ <li> new macro wait_estatus() to get WIFSIGNALED information in an exit code. </li>
+</ul>
+
<h2> in 2.3.0.1 </h2>
<ul>
diff --git a/package/info b/package/info
index f4cf2b8..4289054 100644
--- a/package/info
+++ b/package/info
@@ -1,4 +1,4 @@
package=skalibs
-version=2.3.0.1
+version=2.3.1.0
category=prog
package_macro_name=SKALIBS
diff --git a/src/include/skalibs/djbunix.h b/src/include/skalibs/djbunix.h
index 765fb3b..6bb7de8 100644
--- a/src/include/skalibs/djbunix.h
+++ b/src/include/skalibs/djbunix.h
@@ -83,7 +83,8 @@ extern pid_t waitpid_nointr (pid_t, int *, int) ;
#define wait_nohang(wstat) waitpid_nointr(-1, (wstat), WNOHANG)
extern pid_t wait_pid_nohang (pid_t, int *) ;
extern int wait_pids_nohang (pid_t const *, unsigned int, int *) ;
-#define wait_status(w) (WIFSIGNALED(w) ? 256 : WEXITSTATUS(w))
+#define wait_status(w) (WIFSIGNALED(w) ? 256 + WTERMSIG(w) : WEXITSTATUS(w))
+#define wait_estatus(w) (WIFSIGNALED(w) ? 128 + WTERMSIG(w) : WEXITSTATUS(w) >= 128 ? 128 : WEXITSTATUS(w))
extern unsigned int wait_reap (void) ;
extern int waitn (pid_t *, unsigned int) ;
extern int waitn_reap (pid_t *, unsigned int) ;