[PATCH] xext: Fix shmint.h to not use headers outside of sdk_HEADERS

Keith Packard keithp at keithp.com
Tue Nov 12 14:01:45 PST 2013


shmint.h is part of sdk_HEADERS, and so can't use anything not
included in sdk_HEADERS.

busfault.h includes dix-config.h which is not. Leave the use of
struct busfault in shmint.h and move the include of busfault.h to
shm.c.

protocol-versions.h is not part of sdk_HEADERS, so instead of using
that, just use XTRANS_SEND_FDS to choose whether to expose the fd
passing requests directly.

Reported-by: Julien Cristau <jcristau at debian.org>
Signed-off-by: Keith Packard <keithp at keithp.com>

v2: also avoid using protocol-versions.h
---
 Xext/shm.c          | 1 +
 Xext/shmint.h       | 8 +-------
 include/Makefile.am | 2 +-
 3 files changed, 3 insertions(+), 8 deletions(-)

diff --git a/Xext/shm.c b/Xext/shm.c
index 46ce521..d014b91 100644
--- a/Xext/shm.c
+++ b/Xext/shm.c
@@ -55,6 +55,7 @@ in this Software without prior written authorization from The Open Group.
 #include <X11/Xfuncproto.h>
 #include <sys/mman.h>
 #include "protocol-versions.h"
+#include "busfault.h"
 
 /* Needed for Solaris cross-zone shared memory extension */
 #ifdef HAVE_SHMCTL64
diff --git a/Xext/shmint.h b/Xext/shmint.h
index 21d6cc4..9dadea7 100644
--- a/Xext/shmint.h
+++ b/Xext/shmint.h
@@ -56,16 +56,10 @@ typedef struct _ShmFuncs {
     void (*PutImage) (XSHM_PUT_IMAGE_ARGS);
 } ShmFuncs, *ShmFuncsPtr;
 
-#include <protocol-versions.h>
-
-#if SERVER_SHM_MAJOR_VERSION == 1 && SERVER_SHM_MINOR_VERSION >= 2
+#if XTRANS_SEND_FDS
 #define SHM_FD_PASSING  1
 #endif
 
-#ifdef SHM_FD_PASSING
-#include "busfault.h"
-#endif
-
 typedef struct _ShmDesc {
     struct _ShmDesc *next;
     int shmid;
diff --git a/include/Makefile.am b/include/Makefile.am
index 13d91e2..93d8616 100644
--- a/include/Makefile.am
+++ b/include/Makefile.am
@@ -2,7 +2,6 @@ if XORG
 sdk_HEADERS =		\
 	XIstubs.h	\
 	Xprintf.h	\
-	busfault.h	\
 	callback.h	\
 	client.h	\
 	closestr.h	\
@@ -69,6 +68,7 @@ endif
 AM_CFLAGS = $(DIX_CFLAGS)
 
 EXTRA_DIST = 	\
+	busfault.h	\
 	dix-config-apple-verbatim.h \
 	dixfontstubs.h eventconvert.h eventstr.h inpututils.h \
 	protocol-versions.h \
-- 
1.8.4.2



More information about the xorg-devel mailing list