NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

xsrc/43824: -current xsrc has a broken XShm.h header file



>Number:         43824
>Category:       xsrc
>Synopsis:       -current xsrc has a broken XShm.h header file
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    xsrc-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Sep 01 05:25:00 +0000 2010
>Originator:     Matthew Mondor
>Release:        -current
>Organization:
>Environment:
>Description:

According to the XShm(3) manual page, and a practice which is common is
to include XShm.h and expect that it's enough for related function
prototypes to also be declared.  However, on -current this is not the
case and one must explicitely add an include for shmproto.h.

The fix simply makes XShm.h implicitely include the internal shmproto.h
header file.  This is what FreeBSD also did after their upgrade to XOrg
7.5.  This makes software using the MIT-SHM extension work again on
-current.

>How-To-Repeat:

Attempt to build a package making use of MIT-SHM on -current with
base-x11, such as emulators/vice (currently, vice has a patch to add
shmproto.h but this breaks the package on other releases than -current
and will probably be reverted).  This is how I became aware of the
issue.

>Fix:

--- xsrc/external/mit/libXext/dist/include/X11/extensions/XShm.h.orig   
2010-06-15 23:05:43.000000000 -0400
+++ xsrc/external/mit/libXext/dist/include/X11/extensions/XShm.h        
2010-09-01 01:06:48.000000000 -0400
@@ -34,6 +34,7 @@
 
 #include <X11/Xfuncproto.h>
 #include <X11/extensions/shm.h>
+#include <X11/extensions/shmproto.h>
 
 #ifndef _XSHM_SERVER_
 typedef unsigned long ShmSeg;



Home | Main Index | Thread Index | Old Index