summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorjkim <jkim@058c260c-8361-11dd-a0ac-aa2bafec7d09>2014-07-09 05:14:24 +0800
committerjkim <jkim@058c260c-8361-11dd-a0ac-aa2bafec7d09>2014-07-09 05:14:24 +0800
commit6361b288a57b287fc4ad8424e6dd65700c935955 (patch)
tree99dc8fb65fd1414df5f88a1355735dd65ab339e7
parent95bd41f369fc039a3bb65d833d59581972bc82c9 (diff)
downloadxorg-devel-ports-6361b288a57b287fc4ad8424e6dd65700c935955.tar.gz
xorg-devel-ports-6361b288a57b287fc4ad8424e6dd65700c935955.tar.zst
xorg-devel-ports-6361b288a57b287fc4ad8424e6dd65700c935955.zip
Fix xshmfence_alloc_shm() on 8.3 and 9.x. O_CLOEXEC is available on all
supported versions but mkostemp(3) is only available from 10.0. Therfore, the fd was not properly initialized on them. git-svn-id: https://trillian.chruetertee.ch/svn/ports/trunk@1463 058c260c-8361-11dd-a0ac-aa2bafec7d09
-rw-r--r--x11/libxshmfence/Makefile2
-rw-r--r--x11/libxshmfence/files/patch-src__xshmfence_alloc.c19
2 files changed, 10 insertions, 11 deletions
diff --git a/x11/libxshmfence/Makefile b/x11/libxshmfence/Makefile
index c6c3e17..bcbb547 100644
--- a/x11/libxshmfence/Makefile
+++ b/x11/libxshmfence/Makefile
@@ -2,7 +2,7 @@
PORTNAME= libxshmfence
PORTVERSION= 1.1
-PORTREVISION= 2
+PORTREVISION= 3
CATEGORIES= x11
MAINTAINER= x11@FreeBSD.org
diff --git a/x11/libxshmfence/files/patch-src__xshmfence_alloc.c b/x11/libxshmfence/files/patch-src__xshmfence_alloc.c
index df38300..6822320 100644
--- a/x11/libxshmfence/files/patch-src__xshmfence_alloc.c
+++ b/x11/libxshmfence/files/patch-src__xshmfence_alloc.c
@@ -1,8 +1,11 @@
---- src/xshmfence_alloc.c 2013-11-20 17:13:08.000000000 -0500
-+++ src/xshmfence_alloc.c 2013-12-09 16:06:17.000000000 -0500
-@@ -41,11 +41,15 @@
+--- src/xshmfence_alloc.c.orig 2013-11-20 17:13:08.000000000 -0500
++++ src/xshmfence_alloc.c 2014-07-08 16:39:18.000000000 -0400
+@@ -39,10 +39,14 @@
+ xshmfence_alloc_shm(void)
+ {
char template[] = SHMDIR "/shmfd-XXXXXX";
- int fd;
+- int fd;
++ int fd = -1;
-#ifdef O_TMPFILE
+#if defined(O_CLOEXEC)
@@ -10,11 +13,7 @@
+ fd = mkostemp(template, O_CLOEXEC);
+#elif defined(O_TMPFILE)
fd = open(SHMDIR, O_TMPFILE|O_RDWR|O_CLOEXEC|O_EXCL, 0666);
-- if (fd < 0)
++#endif
+ if (fd < 0)
#endif
-+ if (fd < 0)
{
-+#endif
- fd = mkstemp(template);
- if (fd < 0)
- return fd;