C sucks: define XEventClass in terms of unsigned int, not CARD32.

Apparently pulling in Xmd.h here breaks qt, since they both define an
INT32 type (and incompatible ones even, since Xmd's is unsigned long on
ILP32 because whoever wrote Xmd.h is a C novice).

(Based on inputproto commit b5cbe2d93f.
Patch submitted to xorg@ in <20090117121713.46bf3332@family.dyweni.com>.)
This commit is contained in:
James Cloos 2009-03-28 14:20:38 -04:00
parent ac98d8c559
commit 7629def073

12
Xge.h
View file

@ -30,7 +30,6 @@
#ifndef _XGE_H_
#define _XGE_H_
#include <X11/Xmd.h>
#include <X11/Xlib.h>
#include <X11/Xfuncproto.h>
@ -39,12 +38,15 @@ _XFUNCPROTOBEGIN
/**
* Generic Event mask.
* To be used whenever a list of masks per extension has to be provided.
*
* But, don't actually use the CARD{8,16,32} types. We can't get them them
* defined here without polluting the namespace.
*/
typedef struct {
CARD8 extension;
CARD8 pad0;
CARD16 pad1;
CARD32 evmask;
unsigned char extension;
unsigned char pad0;
unsigned short pad1;
unsigned int evmask;
} XGenericEventMask;
Bool XGEQueryExtension(Display* dpy, int *event_basep, int *err_basep);