summaryrefslogtreecommitdiff
path: root/games/bsdgames/files/patch-dfly
diff options
context:
space:
mode:
Diffstat (limited to 'games/bsdgames/files/patch-dfly')
-rw-r--r--games/bsdgames/files/patch-dfly40
1 files changed, 40 insertions, 0 deletions
diff --git a/games/bsdgames/files/patch-dfly b/games/bsdgames/files/patch-dfly
new file mode 100644
index 000000000000..f67f19f89f11
--- /dev/null
+++ b/games/bsdgames/files/patch-dfly
@@ -0,0 +1,40 @@
+--- ./cribbage/instr.c
++++ ./cribbage/instr.c
+@@ -51,7 +51,11 @@ void
+ instructions(void)
+ {
+ struct stat sb;
++#ifdef __DragonFly__
+ union wait pstat;
++#else
++ int pstat;
++#endif
+ pid_t pid;
+ const char *pager, *path;
+
+@@ -77,7 +81,11 @@ instructions(void)
+ do {
+ pid = waitpid(pid, (int *)&pstat, 0);
+ } while (pid == -1 && errno == EINTR);
++#ifdef __DragonFly__
+ if (pid == -1 || pstat.w_status)
++#else
++ if (pid == -1 || WEXITSTATUS(pstat) || WTERMSIG(pstat))
++#endif
+ exit(1);
+ }
+ }
+--- ./sail/pl_1.c
++++ ./sail/pl_1.c
+@@ -122,7 +122,11 @@ choke(void)
+ void
+ child(void)
+ {
++#ifdef __DragonFly__
+ union wait status;
++#else
++ int status;
++#endif
+ int pid;
+
+ signal(SIGCHLD, SIG_IGN);