From 80f77a1f756d671a4523d91c1b833fcedcbb0657 Mon Sep 17 00:00:00 2001 From: lxsang Date: Tue, 7 May 2019 14:33:35 +0200 Subject: [PATCH] minor lib fix --- lib/ulib/ulib.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/lib/ulib/ulib.c b/lib/ulib/ulib.c index 0154dd3..3220438 100644 --- a/lib/ulib/ulib.c +++ b/lib/ulib/ulib.c @@ -117,9 +117,18 @@ static int l_fork(lua_State* L) static int l_waitpid(lua_State* L) { int pid = luaL_checknumber(L,1); + int nohang = luaL_checknumber(L,2); + pid_t st; int status; - waitpid(pid, &status, 0); - lua_pushnumber(L, status); + if(nohang) + { + st = waitpid(pid, &status, WNOHANG); + } + else + { + st = waitpid(pid, &status, 0); + } + lua_pushnumber(L, st); return 1; } static int l_kill(lua_State* L)