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

x11proto-xext: Changes to 'upstream-unstable'



 .gitignore   |    1 
 ChangeLog    |   19 ----------
 Makefile.am  |   13 +++++++
 Xge.h        |   54 +++++++++++++++++++++++++++++++
 configure.ac |    2 -
 ge.h         |   62 +++++++++++++++++++++++++++++++++++
 geproto.h    |   85 +++++++++++++++++++++++++++++++++++++++++++++++++
 geproto.txt  |  102 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 8 files changed, 318 insertions(+), 20 deletions(-)

New commits:
commit db08133016b421ef12c65db9c4a2819078f01b06
Author: Peter Hutterer <peter@cs.unisa.edu.au>
Date:   Wed May 28 17:18:14 2008 +0930

    Bump to 7.0.3.

diff --git a/configure.ac b/configure.ac
index b08240e..8f0c242 100644
--- a/configure.ac
+++ b/configure.ac
@@ -1,5 +1,5 @@
 AC_PREREQ([2.57])
-AC_INIT([XExtProto], [7.0.2], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
+AC_INIT([XExtProto], [7.0.3], [https://bugs.freedesktop.org/enter_bug.cgi?product=xorg])
 AM_INIT_AUTOMAKE([foreign dist-bzip2])
 
 XORG_RELEASE_VERSION

commit 801650f0d15b4497c63d056559ad98a8ca82f271
Author: Peter Hutterer <peter@cs.unisa.edu.au>
Date:   Mon May 12 17:26:02 2008 +0930

    Xge: replace copyrights with standard format from xserver COPYING.

diff --git a/Xge.h b/Xge.h
index 8b9fb3c..84fa250 100644
--- a/Xge.h
+++ b/Xge.h
@@ -1,23 +1,27 @@
 /*
- * Copyright � 2007 Peter Hutterer
+ * Copyright � 2007-2008 Peter Hutterer
  *
- * Permission to use, copy, modify, distribute, and sell this software and its
- * documentation for any purpose is hereby granted without fee, provided that
- * the above copyright notice appear in all copies and that both that
- * copyright notice and this permission notice appear in supporting
- * documentation, and that the name of the author not be used in
- * advertising or publicity pertaining to distribution of the software without
- * specific, written prior permission.  The author makes no
- * representations about the suitability of this software for any purpose.  It
- * is provided "as is" without express or implied warranty.
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ *
+ * Authors: Peter Hutterer, University of South Australia, NICTA
  *
- * THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
- * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
- * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR
- * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
- * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
- * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
- * PERFORMANCE OF THIS SOFTWARE.
  */
 
 
diff --git a/ge.h b/ge.h
index 38652a0..6521698 100644
--- a/ge.h
+++ b/ge.h
@@ -1,30 +1,28 @@
-/* 
-
-Copyright 2007 Peter Hutterer <peter@cs.unisa.edu.au>
-
-Permission to use, copy, modify, distribute, and sell this software and its
-documentation for any purpose is hereby granted without fee, provided that
-the above copyright notice appear in all copies and that both that
-copyright notice and this permission notice appear in supporting
-documentation.
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR
-OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the name of the author shall
-not be used in advertising or otherwise to promote the sale, use or
-other dealings in this Software without prior written authorization
-from the author.
-
-*/
+/*
+ * Copyright © 2007-2008 Peter Hutterer
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ *
+ * Authors: Peter Hutterer, University of South Australia, NICTA
+ *
+ */
 
 #ifndef _GE_H_
 #define _GE_H_
diff --git a/geproto.h b/geproto.h
index d9d79a1..54107df 100644
--- a/geproto.h
+++ b/geproto.h
@@ -1,30 +1,28 @@
-/* 
-
-Copyright 2007 Peter Hutterer <peter@cs.unisa.edu.au>
-
-Permission to use, copy, modify, distribute, and sell this software and its
-documentation for any purpose is hereby granted without fee, provided that
-the above copyright notice appear in all copies and that both that
-copyright notice and this permission notice appear in supporting
-documentation.
-
-The above copyright notice and this permission notice shall be included
-in all copies or substantial portions of the Software.
-
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
-OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
-MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
-IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR
-OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
-ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
-OTHER DEALINGS IN THE SOFTWARE.
-
-Except as contained in this notice, the name of the author shall
-not be used in advertising or otherwise to promote the sale, use or
-other dealings in this Software without prior written authorization
-from the author.
-
-*/
+/*
+ * Copyright © 2007-2008 Peter Hutterer
+ *
+ * Permission is hereby granted, free of charge, to any person obtaining a
+ * copy of this software and associated documentation files (the "Software"),
+ * to deal in the Software without restriction, including without limitation
+ * the rights to use, copy, modify, merge, publish, distribute, sublicense,
+ * and/or sell copies of the Software, and to permit persons to whom the
+ * Software is furnished to do so, subject to the following conditions:
+ *
+ * The above copyright notice and this permission notice (including the next
+ * paragraph) shall be included in all copies or substantial portions of the
+ * Software.
+ *
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+ * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.  IN NO EVENT SHALL
+ * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+ * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+ * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+ * DEALINGS IN THE SOFTWARE.
+ *
+ * Authors: Peter Hutterer, University of South Australia, NICTA
+ *
+ */
 
 #ifndef _GEPROTO_H_
 #define _GEPROTO_H_

commit a07a30f9922e9768e2cf00cc2e479978242c58a8
Author: James Cloos <cloos@jhcloos.com>
Date:   Thu Dec 6 16:39:10 2007 -0500

    Replace static ChangeLog with dist-hook to generate from git log

diff --git a/ChangeLog b/ChangeLog
deleted file mode 100644
index ef3ad1f..0000000
--- a/ChangeLog
+++ /dev/null
@@ -1,19 +0,0 @@
-2006-06-27  Alan Coopersmith  <alan.coopersmith@sun.com>
-
-	* Makefile.am: 
-	* Xagsrv.h [REMOVED]:
-	Remove Xserver API for appgroup extension
-	[Will break Xorg server builds prior to 2006-06-21 / git commit
-	 77c947b900faf34f425eef1549d8210c475e093b]
-
-2006-06-20  Alan Coopersmith  <alan.coopersmith@sun.com>
-
-	* security.h: 
-	Remove Xserver API for security extension (#ifdef _SECURITY_SERVER)
-	[Will break Xorg server builds prior to 2006-06-20 / git commit
-	 d44b2a0a57fb89741173c31676af0ccc822387dc]
-
-2005-12-14  Kevin E. Martin  <kem-at-freedesktop-dot-org>
-
-	* configure.ac:
-	Update package version number for final X11R7 release candidate.
diff --git a/Makefile.am b/Makefile.am
index 782b7d4..bddcacc 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -40,3 +40,13 @@ pkgconfigdir = $(libdir)/pkgconfig
 pkgconfig_DATA = xextproto.pc
 
 EXTRA_DIST = autogen.sh xextproto.pc.in
+
+EXTRA_DIST += ChangeLog
+MAINTAINERCLEANFILES = ChangeLog
+
+.PHONY: ChangeLog
+
+ChangeLog:
+	(GIT_DIR=$(top_srcdir)/.git git-log > .changelog.tmp && mv .changelog.tmp ChangeLog; rm -f .changelog.tmp) || (touch ChangeLog; echo 'git directory not found: installing possibly empty changelog.' >&2)
+
+dist-hook: ChangeLog

commit 087c2ccc7e348e530422a578059173c959aa5a78
Author: James Cloos <cloos@jhcloos.com>
Date:   Mon Sep 3 05:54:25 2007 -0400

    Add *~ to .gitignore to skip patch/emacs droppings

diff --git a/.gitignore b/.gitignore
index a76ccb0..c857636 100644
--- a/.gitignore
+++ b/.gitignore
@@ -8,3 +8,4 @@ configure
 install-sh
 missing
 xextproto.pc
+*~

commit 69356e4165f11f3ed4b377d29df038549191a91e
Author: Peter Hutterer <peter@cs.unisa.edu.au>
Date:   Thu May 17 19:40:15 2007 +0930

    Add XGE header files and protocol description.

diff --git a/Makefile.am b/Makefile.am
index 782b7d4..2fa1920 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -3,6 +3,9 @@ xext_HEADERS = \
 	dpms.h \
 	dpmsstr.h \
 	extutil.h \
+        ge.h \
+        geproto.h \
+        Xge.h \
 	lbxbuf.h \
 	lbxbufstr.h \
 	lbxdeltastr.h \
diff --git a/Xge.h b/Xge.h
new file mode 100644
index 0000000..8b9fb3c
--- /dev/null
+++ b/Xge.h
@@ -0,0 +1,50 @@
+/*
+ * Copyright � 2007 Peter Hutterer
+ *
+ * Permission to use, copy, modify, distribute, and sell this software and its
+ * documentation for any purpose is hereby granted without fee, provided that
+ * the above copyright notice appear in all copies and that both that
+ * copyright notice and this permission notice appear in supporting
+ * documentation, and that the name of the author not be used in
+ * advertising or publicity pertaining to distribution of the software without
+ * specific, written prior permission.  The author makes no
+ * representations about the suitability of this software for any purpose.  It
+ * is provided "as is" without express or implied warranty.
+ *
+ * THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE,
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO
+ * EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, INDIRECT OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE,
+ * DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER
+ * TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
+ * PERFORMANCE OF THIS SOFTWARE.
+ */
+
+
+/* XGE Client interfaces */
+
+#ifndef _XGE_H_
+#define _XGE_H_
+
+#include <X11/Xlib.h>
+#include <X11/Xfuncproto.h>
+
+_XFUNCPROTOBEGIN
+
+/**
+ * Generic Event mask. 
+ * To be used whenever a list of masks per extension has to be provided.
+ */
+typedef struct {
+    CARD8       extension;
+    CARD8       pad0;
+    CARD16      pad1;
+    CARD32      evmask;
+} XGenericEventMask;
+
+Bool XGEQueryExtension(Display* dpy, int *event_basep, int *err_basep);
+Bool XGEQueryVersion(Display* dpy, int *major, int* minor);
+
+_XFUNCPROTOEND
+
+#endif /* _XGE_H_ */
diff --git a/ge.h b/ge.h
new file mode 100644
index 0000000..38652a0
--- /dev/null
+++ b/ge.h
@@ -0,0 +1,64 @@
+/* 
+
+Copyright 2007 Peter Hutterer <peter@cs.unisa.edu.au>
+
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that
+the above copyright notice appear in all copies and that both that
+copyright notice and this permission notice appear in supporting
+documentation.
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR
+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of the author shall
+not be used in advertising or otherwise to promote the sale, use or
+other dealings in this Software without prior written authorization
+from the author.
+
+*/
+
+#ifndef _GE_H_
+#define _GE_H_
+
+#define GE_NAME         "Generic Event Extension"
+#define GE_MAJOR        1
+#define GE_MINOR        0
+
+/*********************************************************
+ *
+ * Requests
+ *
+ */
+
+#define X_GEQueryVersion        0
+
+#define GENumberRequests       (X_GEQueryVersion + 1)
+
+/*********************************************************
+ *
+ * Events
+ *
+ */
+
+#define X_GenericEvent        0
+
+#define GENumberEvents        (X_GenericEvent + 1)
+
+/*********************************************************
+ *
+ * Errors
+ *
+ */
+
+#define GENumberErrors        0
+
+#endif /* _GE_H_ */
diff --git a/geproto.h b/geproto.h
new file mode 100644
index 0000000..d9d79a1
--- /dev/null
+++ b/geproto.h
@@ -0,0 +1,87 @@
+/* 
+
+Copyright 2007 Peter Hutterer <peter@cs.unisa.edu.au>
+
+Permission to use, copy, modify, distribute, and sell this software and its
+documentation for any purpose is hereby granted without fee, provided that
+the above copyright notice appear in all copies and that both that
+copyright notice and this permission notice appear in supporting
+documentation.
+
+The above copyright notice and this permission notice shall be included
+in all copies or substantial portions of the Software.
+
+THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
+OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
+MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
+IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY CLAIM, DAMAGES OR
+OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
+ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
+OTHER DEALINGS IN THE SOFTWARE.
+
+Except as contained in this notice, the name of the author shall
+not be used in advertising or otherwise to promote the sale, use or
+other dealings in this Software without prior written authorization
+from the author.
+
+*/
+
+#ifndef _GEPROTO_H_
+#define _GEPROTO_H_
+
+#include<X11/Xproto.h>
+#include<X11/X.h>
+#include<X11/extensions/ge.h>
+
+
+/*********************************************************
+ *
+ * Protocol request constants
+ *
+ */
+
+#define X_GEGetExtensionVersion 1
+
+/*********************************************************
+ *
+ * XGE protocol requests/replies 
+ *
+ */
+
+/* generic request */
+typedef struct {
+    CARD8   reqType;
+    CARD8   ReqType;
+    CARD16  length B16;
+} xGEReq;
+
+
+/* QueryVersion */
+typedef struct {
+    CARD8 	reqType;       /* input extension major code   */
+    CARD8 	ReqType;       /* always X_GEQueryVersion */
+    CARD16 	length B16;
+    CARD16      majorVersion B16;
+    CARD16      minorVersion B16;
+} xGEQueryVersionReq;
+
+#define sz_xGEQueryVersionReq    8
+
+typedef struct {
+    CARD8 	repType;  	/* X_Reply 			*/
+    CARD8 	RepType;       	/* always X_GEQueryVersion */
+    CARD16 	sequenceNumber B16;
+    CARD32 	length B32;
+    CARD16 	majorVersion B16;
+    CARD16 	minorVersion B16;
+    CARD32 	pad00 B32;
+    CARD32 	pad01 B32;
+    CARD32 	pad02 B32;
+    CARD32 	pad03 B32;
+    CARD32 	pad04 B32;
+} xGEQueryVersionReply;
+
+#define sz_xGEQueryVersionReply    32
+
+#endif /* _GEPROTO_H_ */
+
diff --git a/geproto.txt b/geproto.txt
new file mode 100644
index 0000000..e30a68d
--- /dev/null
+++ b/geproto.txt
@@ -0,0 +1,102 @@
+                        X Generic Event Extension
+                              Peter Hutterer
+                          peter@cs.unisa.edu.au
+
+
+1. Introduction
+2. Requests
+3. Events
+4. Usage from other extensions - server side
+5. Usage from other extensions - client side
+6. Notes
+
+_____________________________________________________________________________
+1. Introduction
+
+X was designed to provide 64 event opcodes for all extensions. With the
+increasing number of extensions, event opcodes are running out and future
+extensions will not be able to send events to the client.
+
+The Generic Event Extension is a template for future extensions to re-use a
+single opcode. GE does not actually do much but provide headers and a few API
+calls. The majority of the work is still to be done in the extensions.
+
+Standard X events are limited to 32 bytes. GenericEvents have the same size
+restrictions as requests, with a minimum of 32 bytes, followed by an arbitrary
+amount of data specified in the length field (see Section 3.)
+
+_____________________________________________________________________________
+2. Requests
+
+GEQueryVersion:
+        CARD8   reqType
+        CARD8   ReqType         X_GEQueryVersion
+        CARD16  length
+        CARD32  majorVersion
+        CARD32  minorVersion
+
+GEQueryVersion reply:
+        CARD8   repType
+        CARD8   RepType         X_GEQueryVersion
+        CARD16  sequenceNumber
+        CARD32  length
+        CARD16  major_version
+        CARD16  minor_version
+_____________________________________________________________________________
+3. Events
+
+GE defines a single event, to be used by all extensions. The event's structure 
+is similar to a request.
+
+GenericEvent
+    BYTE    type
+    CARD8   extension
+    CARD16  sequenceNumber
+    CARD32  length;
+    CARD16  evtype;
+    CARD16  pad1;
+    CARD32  pad2;
+    CARD32  pad3;
+    CARD32  pad4;
+    CARD32  pad5;
+    CARD32  pad6;
+
+The field 'extension' is to be set to the major opcode of the extension.
+The 'evtype' field is the actual opcode of the event. 
+This event is to be type-cast by an extension to it's real format.
+The length field specifies the number of 4-byte blocks after the initial 32
+bytes.
+
+_____________________________________________________________________________
+4. Usage from other extensions - server side
+
+GERegisterExtension(major_opcode, swap)
+    An extension needs to register at the GE. This should be done after
+    calling AddExtension(). 
+    major_opcode is the major opcode for all extension requests.
+    The swap function will be called when an event has to be converted for a
+    client with different byte ordering.
+
+_____________________________________________________________________________
+5. Usage from other extensions - client side
+
+None. The event conversion rules of the extension however should be able to
+handle events of type GenericEvent as well.
+
+Internally, when an extension is initialized, it needs to call XExtAddDisplay
+and provide a set of hooks that are to be called for events conversion and
+other stuff. XGE hooks into XExtAddDisplay and stores the hooks provided by
+the extension. Should a GenericEvent come along, XGE receives it but relays
+the call to the real extension to handle it. 
+
+_____________________________________________________________________________
+6. Notes
+
+Although the wire event is of arbitrary length, the actual size of an XEvent
+is restricted to sizeof(XEvent) [96 bytes, see Xlib.h]. If an extension
+converts a wire event to an XEvent > 96 bytes, it will overwrite the space
+acllocated for the event. See struct _XSQEvent in Xlibint.h for details.
+
+Extensions need to malloc additional data and fill the XEvent structure with
+pointers to the malloc'd data. The client then needs to free the data, only
+the XEvent structure will be released by Xlib.


Reply to: