freebsd-ports/mail/thunderbird/files/patch-mozilla_toolkit_xre_glxtest.cpp
Alex Dupre 2c0f349438 Add a patch to fix enigmail and bump PORTREVISION.
Issue analysis:
fire_glxtest_process() forks a new process, but doesn't wait(2) for it.
So when wait(2) is invoked later it may return a pid of this child before any
other child.

Submitted by:	avg
Approved by:	flo
2011-08-25 08:35:59 +00:00

25 lines
746 B
C++

--- mozilla/toolkit/xre/glxtest.cpp.orig 2011-08-19 18:57:10.604870746 +0300
+++ mozilla/toolkit/xre/glxtest.cpp 2011-08-19 18:59:43.620447963 +0300
@@ -51,6 +51,8 @@
// which runs the glxtest() static function. This creates a X connection, a GLX context, calls glGetString, and writes that
// to the 'write' end of the pipe.
+#include <sys/types.h>
+#include <sys/wait.h>
#include <cstdio>
#include <cstdlib>
#include <unistd.h>
@@ -224,6 +226,7 @@
void fire_glxtest_process()
{
int pfd[2];
+ int status;
if (pipe(pfd) == -1) {
perror("pipe");
exit(EXIT_FAILURE);
@@ -244,4 +247,5 @@
close(pfd[1]);
mozilla::widget::glxtest_pipe = pfd[0];
mozilla::widget::glxtest_pid = pid;
+ waitpid(pid, &status, 0);
}