diff options
author | Keith Packard <keithp@keithp.com> | 2009-08-25 19:23:27 -0700 |
---|---|---|
committer | Keith Packard <keithp@keithp.com> | 2009-08-25 19:33:25 -0700 |
commit | 6361c3b9af39265df9222b1f3b6fb9c4197087c1 (patch) | |
tree | 0617cec3aa84d2f980b6a5004d2dbfe8cc300db8 /uxa | |
parent | 2786a66719a6dbb735eb7c551c412475c30ffa51 (diff) |
Fix SHM functions to work with server after 1.6.0
Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'uxa')
-rw-r--r-- | uxa/uxa-accel.c | 13 | ||||
-rw-r--r-- | uxa/uxa-priv.h | 29 |
2 files changed, 15 insertions, 27 deletions
diff --git a/uxa/uxa-accel.c b/uxa/uxa-accel.c index a225a4dc..796f949e 100644 --- a/uxa/uxa-accel.c +++ b/uxa/uxa-accel.c @@ -1,7 +1,7 @@ /* - * Copyright © 2001 Keith Packard + * Copyright ® 2001 Keith Packard * - * Partly based on code that is Copyright © The XFree86 Project Inc. + * Partly based on code that is Copyright ® The XFree86 Project Inc. * * Permission to use, copy, modify, distribute, and sell this software and its * documentation for any purpose is hereby granted without fee, provided that @@ -23,7 +23,7 @@ * * Authors: * Eric Anholt <eric@anholt.net> - * Michel Dänzer <michel@tungstengraphics.com> + * Michel Dänzer <michel@tungstengraphics.com> * */ @@ -216,6 +216,8 @@ uxa_do_put_image (DrawablePtr pDrawable, GCPtr pGC, int depth, int x, int y, #ifdef MITSHM +#include "xorgVersion.h" + static Bool uxa_do_shm_put_image(DrawablePtr pDrawable, GCPtr pGC, int depth, unsigned int format, int w, int h, int sx, int sy, int sw, @@ -251,6 +253,8 @@ uxa_do_shm_put_image(DrawablePtr pDrawable, GCPtr pGC, int depth, return FALSE; } +#if XORG_VERSION_CURRENT < XORG_VERSION_NUMERIC(1,5,99,0,0) + /* The actual ShmPutImage isn't wrapped by the damage layer, so we need to * inform any interested parties of the damage incurred to the drawable. * @@ -271,6 +275,9 @@ uxa_shm_put_image(DrawablePtr pDrawable, GCPtr pGC, int depth, unsigned int form uxa_finish_access(pDrawable); } } +#else +#define uxa_shm_put_image NULL +#endif ShmFuncs uxa_shm_funcs = { NULL, uxa_shm_put_image }; diff --git a/uxa/uxa-priv.h b/uxa/uxa-priv.h index d469474d..363b9f70 100644 --- a/uxa/uxa-priv.h +++ b/uxa/uxa-priv.h @@ -328,30 +328,8 @@ extern const GCOps uxa_ops; /* XXX these come from shmint.h, which isn't exported by the server */ #ifdef HAVE_XEXTPROTO_71 -/* Up to xextproto 7.1, these were provided in shmstr.h */ -typedef struct _ShmFuncs { - PixmapPtr (* CreatePixmap)(ScreenPtr pScreen, - int width, - int height, - int depth, - char *addr); - void (* PutImage)(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); -} ShmFuncs, *ShmFuncsPtr; -#endif - -extern ShmFuncs uxa_shm_funcs; +#include "shmint.h" +#else void ShmRegisterFuncs(ScreenPtr pScreen, ShmFuncsPtr funcs); @@ -361,6 +339,9 @@ ShmSetPixmapFormat(ScreenPtr pScreen, int format); void fbShmPutImage(XSHM_PUT_IMAGE_ARGS); +#endif + +extern ShmFuncs uxa_shm_funcs; #endif |