1 diff -urN xf86-video-intel-2.4.97.0.orig/src/i830_exa.c xf86-video-intel-2.4.97.0/src/i830_exa.c
2 --- xf86-video-intel-2.4.97.0.orig/src/i830_exa.c 2008-08-21 18:36:09.000000000 +0200
3 +++ xf86-video-intel-2.4.97.0/src/i830_exa.c 2008-09-20 23:42:31.000000000 +0200
8 -static DevPrivateKey uxa_pixmap_key = &uxa_pixmap_key;
9 +static int uxa_pixmap_index;
12 i830_uxa_set_pixmap_bo (PixmapPtr pixmap, dri_bo *bo)
14 - dixSetPrivate(&pixmap->devPrivates, uxa_pixmap_key, bo);
15 + dixSetPrivate(&pixmap->devPrivates, &uxa_pixmap_index, bo);
20 I830Ptr i830 = I830PTR(scrn);
22 if (i830->accel == ACCEL_UXA) {
23 - return dixLookupPrivate(&pixmap->devPrivates, uxa_pixmap_key);
24 + return dixLookupPrivate(&pixmap->devPrivates, &uxa_pixmap_index);
25 } else if (i830->accel == ACCEL_EXA) {
26 struct i830_exa_pixmap_priv *driver_priv =
27 exaGetPixmapDriverPrivate(pixmap);
29 ScrnInfoPtr scrn = xf86Screens[pScreen->myNum];
30 I830Ptr i830 = I830PTR(scrn);
32 - if (!dixRequestPrivate(uxa_pixmap_key, 0))
33 + if (!dixRequestPrivate(&uxa_pixmap_index, 0))
36 i830->uxa_driver = uxa_driver_alloc();
37 diff -urN xf86-video-intel-2.4.97.0.orig/uxa/uxa.c xf86-video-intel-2.4.97.0/uxa/uxa.c
38 --- xf86-video-intel-2.4.97.0.orig/uxa/uxa.c 2008-08-19 19:45:36.000000000 +0200
39 +++ xf86-video-intel-2.4.97.0/uxa/uxa.c 2008-09-20 23:44:36.000000000 +0200
41 #include "dixfontstr.h"
44 -DevPrivateKey uxa_screen_key = &uxa_screen_key;
45 +int uxa_screen_index;
48 * uxa_get_drawable_pixmap() returns a backing pixmap for a given drawable.
51 uxa_screen->info = uxa_driver;
53 - dixSetPrivate(&screen->devPrivates, uxa_screen_key, uxa_screen);
54 + dixSetPrivate(&screen->devPrivates, &uxa_screen_index, uxa_screen);
56 // exaDDXDriverInit(screen);
58 diff -urN xf86-video-intel-2.4.97.0.orig/uxa/uxa-priv.h xf86-video-intel-2.4.97.0/uxa/uxa-priv.h
59 --- xf86-video-intel-2.4.97.0.orig/uxa/uxa-priv.h 2008-08-19 19:45:36.000000000 +0200
60 +++ xf86-video-intel-2.4.97.0/uxa/uxa-priv.h 2008-09-20 23:43:53.000000000 +0200
62 (PixmapWidthPaddingInfo[d].padRoundUp+1)))
65 -extern DevPrivateKey uxa_screen_key;
66 -#define uxa_get_screen(s) ((uxa_screen_t *)dixLookupPrivate(&(s)->devPrivates, uxa_screen_key))
67 +extern int uxa_screen_index;
68 +#define uxa_get_screen(s) ((uxa_screen_t *)dixLookupPrivate(&(s)->devPrivates, &uxa_screen_index))
70 /** Align an offset to an arbitrary alignment */
71 #define UXA_ALIGN(offset, align) (((offset) + (align) - 1) - \