[OpenWrt-Devel] [PATCH] fstools: guard usage of WEXITSTATUS

Michael Heimpold mhei at heimpold.de
Sat Nov 24 04:22:53 EST 2018


According to man page, using WEXITSTATUS should be guarded by a check
of WIFEXITED, so add this check.

While at, also print an error message in case fsck was terminated
by a signal.

Signed-off-by: Michael Heimpold <mhei at heimpold.de>
---
 block.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/block.c b/block.c
index 8e08310..b01a633 100644
--- a/block.c
+++ b/block.c
@@ -757,8 +757,10 @@ static void check_filesystem(struct probe_info *pr)
 		int status;
 
 		waitpid(pid, &status, 0);
-		if (WEXITSTATUS(status))
+		if (WIFEXITED(status) && WEXITSTATUS(status))
 			ULOG_ERR("check_filesystem: %s returned %d\n", ckfs, WEXITSTATUS(status));
+		if (WIFSIGNALED(status))
+			ULOG_ERR("check_filesystem: %s terminated by %s\n", ckfs, strsignal(WTERMSIG(status)));
 	}
 }
 
-- 
2.17.1


_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list