summaryrefslogtreecommitdiff
path: root/xserver/Xext/shmint.h
diff options
context:
space:
mode:
Diffstat (limited to 'xserver/Xext/shmint.h')
-rw-r--r--xserver/Xext/shmint.h34
1 files changed, 34 insertions, 0 deletions
diff --git a/xserver/Xext/shmint.h b/xserver/Xext/shmint.h
index f659fd23a..f9b69282a 100644
--- a/xserver/Xext/shmint.h
+++ b/xserver/Xext/shmint.h
@@ -24,12 +24,46 @@
#define _SHMINT_H_
#define _XSHM_SERVER_
+#ifndef HAVE_X11_EXTENSIONS_SHMPROTO_H
#include <X11/extensions/shmstr.h>
+#else
+#include <X11/extensions/shmproto.h>
+#endif
#include "screenint.h"
#include "pixmap.h"
#include "gc.h"
+#ifdef HAVE_X11_EXTENSIONS_SHMPROTO_H
+#define XSHM_PUT_IMAGE_ARGS \
+ DrawablePtr /* dst */, \
+ GCPtr /* pGC */, \
+ int /* depth */, \
+ unsigned int /* format */, \
+ int /* w */, \
+ int /* h */, \
+ int /* sx */, \
+ int /* sy */, \
+ int /* sw */, \
+ int /* sh */, \
+ int /* dx */, \
+ int /* dy */, \
+ char * /* data */
+
+#define XSHM_CREATE_PIXMAP_ARGS \
+ ScreenPtr /* pScreen */, \
+ int /* width */, \
+ int /* height */, \
+ int /* depth */, \
+ char * /* addr */
+
+typedef struct _ShmFuncs {
+ PixmapPtr (* CreatePixmap)(XSHM_CREATE_PIXMAP_ARGS);
+ void (* PutImage)(XSHM_PUT_IMAGE_ARGS);
+} ShmFuncs, *ShmFuncsPtr;
+
+#endif
+
void
ShmRegisterFuncs(ScreenPtr pScreen, ShmFuncsPtr funcs);