summaryrefslogtreecommitdiff
path: root/uxa
diff options
context:
space:
mode:
authorChris Wilson <chris@chris-wilson.co.uk>2010-06-07 18:04:51 +0100
committerOwain G. Ainsworth <oga@openbsd.org>2010-06-07 21:14:25 +0100
commitfcdd53c6c130bf29cfd92309672c1fed3ec048f6 (patch)
tree3f36a05621ef7e6dd3e58edb01d6a15a8c803dae /uxa
parent8e57056513f147d22d3f99b84284f38f2b1dec32 (diff)
uxa: Setup acceleration functions prior to the damage layer
We need to install the acceleration functions so that they are wrapped by the Damage layer. This fixes the corruption under a compositing WM introduced in commit 8700673157fdd3a87ad5150f2f30823261fec519. Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Reported-and-tested-by: Arkadiusz Miƛkiewicz <arekm@maven.pl> (cherry picked from commit e6acbc763229fd5b5b2cc1d65136404d02ac4655) Signed-off-by: Owain G. Ainsworth <oga@openbsd.org>
Diffstat (limited to 'uxa')
-rw-r--r--uxa/uxa.c11
-rw-r--r--uxa/uxa.h1
2 files changed, 9 insertions, 3 deletions
diff --git a/uxa/uxa.c b/uxa/uxa.c
index 19c6a2d1..a48c3e13 100644
--- a/uxa/uxa.c
+++ b/uxa/uxa.c
@@ -552,9 +552,6 @@ Bool uxa_driver_init(ScreenPtr screen, uxa_driver_t * uxa_driver)
ShmRegisterFuncs(screen, &uxa_shm_funcs);
#endif
- if (!uxa_glyphs_init(screen))
- return FALSE;
-
LogMessage(X_INFO,
"UXA(%d): Driver registered support for the following"
" operations:\n", screen->myNum);
@@ -575,6 +572,14 @@ Bool uxa_driver_init(ScreenPtr screen, uxa_driver_t * uxa_driver)
return TRUE;
}
+Bool uxa_resources_init(ScreenPtr screen)
+{
+ if (!uxa_glyphs_init(screen))
+ return FALSE;
+
+ return TRUE;
+}
+
/**
* uxa_driver_fini tears down UXA on a given screen.
*
diff --git a/uxa/uxa.h b/uxa/uxa.h
index 23f9465b..efadfdaa 100644
--- a/uxa/uxa.h
+++ b/uxa/uxa.h
@@ -558,6 +558,7 @@ typedef struct _UxaDriver {
uxa_driver_t *uxa_driver_alloc(void);
Bool uxa_driver_init(ScreenPtr screen, uxa_driver_t * uxa_driver);
+Bool uxa_resources_init(ScreenPtr screen);
void uxa_driver_fini(ScreenPtr pScreen);