summaryrefslogtreecommitdiff
path: root/glx
diff options
context:
space:
mode:
authorDaniel Stone <daniel@fooishbar.org>2012-07-10 02:02:55 +0100
committerKeith Packard <keithp@keithp.com>2012-07-09 23:06:41 -0700
commitb86aa74cafddf9bca5addfeb458a23f46ddcf132 (patch)
treed00cbc8e3b3be064c2911d9f863cf68db2cdd08e /glx
parent13552a5c4701097a1507a99ed8366ab1438844b6 (diff)
GLX: Insert swrast provider from GlxExtensionInit
Rather than making poor old miinitext.c do it, including making DMX have fake symbols just to keep it happy. Signed-off-by: Daniel Stone <daniel@fooishbar.org> Reviewed-by: Stéphane Marchesin <stephane.marchesin@gmail.com> Signed-off-by: Keith Packard <keithp@keithp.com>
Diffstat (limited to 'glx')
-rw-r--r--glx/glxext.c8
-rw-r--r--glx/glxserver.h1
2 files changed, 8 insertions, 1 deletions
diff --git a/glx/glxext.c b/glx/glxext.c
index 8d168d8a3..e506aec0b 100644
--- a/glx/glxext.c
+++ b/glx/glxext.c
@@ -322,9 +322,15 @@ GlxExtensionInit(void)
ExtensionEntry *extEntry;
ScreenPtr pScreen;
int i;
- __GLXprovider *p;
+ __GLXprovider *p, **stack;
Bool glx_provided = False;
+ if (serverGeneration == 1) {
+ for (stack = &__glXProviderStack; *stack; stack = &(*stack)->next)
+ ;
+ *stack = &__glXDRISWRastProvider;
+ }
+
__glXContextRes = CreateNewResourceType((DeleteType) ContextGone,
"GLXContext");
__glXDrawableRes = CreateNewResourceType((DeleteType) DrawableGone,
diff --git a/glx/glxserver.h b/glx/glxserver.h
index 24e3d626f..61c45c51e 100644
--- a/glx/glxserver.h
+++ b/glx/glxserver.h
@@ -99,6 +99,7 @@ struct __GLXprovider {
const char *name;
__GLXprovider *next;
};
+__GLXprovider __glXDRISWRastProvider;
void GlxPushProvider(__GLXprovider * provider);