View | Details | Raw Unified | Return to bug 240566
Collapse All | Expand All

(-)devel/leatherman/Makefile (+1 lines)
Lines 2-7 Link Here
2
2
3
PORTNAME=	leatherman
3
PORTNAME=	leatherman
4
PORTVERSION=	1.7.1
4
PORTVERSION=	1.7.1
5
PORTREVISION=	1
5
CATEGORIES=	devel
6
CATEGORIES=	devel
6
7
7
MAINTAINER=	puppet@FreeBSD.org
8
MAINTAINER=	puppet@FreeBSD.org
(-)devel/leatherman/files/patch-execution_src_posix_execution.cc (+20 lines)
Line 0 Link Here
1
--- execution/src/posix/execution.cc.orig	2019-08-10 21:37:06 UTC
2
+++ execution/src/posix/execution.cc
3
@@ -487,9 +487,14 @@ namespace leatherman { namespace execution {
4
                 kill(-child, SIGKILL);
5
             }
6
             // Wait for the child to exit
7
-            if (waitpid(child, &status, 0) == -1) {
8
-                LOG_DEBUG(format_error(_("waitpid failed")));
9
-                return;
10
+            while (waitpid(child, &status, 0) == -1) {
11
+                if ( errno == EINTR ) {
12
+                    LOG_DEBUG(format_error(_("waitpid was interrupted by a signal, retrying")));
13
+                    continue;
14
+                } else {
15
+                    LOG_DEBUG(format_error(_("waitpid failed")));
16
+                    return;
17
+                }
18
             }
19
             if (WIFEXITED(status)) {
20
                 status = static_cast<char>(WEXITSTATUS(status));

Return to bug 240566