diff options
Diffstat (limited to 'xorg-server/hw/xwin/InitOutput.c')
-rw-r--r-- | xorg-server/hw/xwin/InitOutput.c | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/xorg-server/hw/xwin/InitOutput.c b/xorg-server/hw/xwin/InitOutput.c index ceb71ff07..98dcd6909 100644 --- a/xorg-server/hw/xwin/InitOutput.c +++ b/xorg-server/hw/xwin/InitOutput.c @@ -144,6 +144,31 @@ winClipboardShutdown(void) } #endif +static const ExtensionModule xwinExtensions[] = { +#ifdef GLXEXT + { GlxExtensionInit, "GLX", &noGlxExtension }, +#endif +}; + +/* + * XwinExtensionInit + * Initialises Xwin-specific extensions. + */ +static +void XwinExtensionInit(void) +{ + int i; + +#ifdef XWIN_GLX_WINDOWS + if ((g_fNativeGl) && (serverGeneration == 1)) { + /* install the native GL provider */ + glxWinPushNativeProvider(); + } +#endif + + for (i = 0; i < ARRAY_SIZE(xwinExtensions); i++) + LoadExtension(&xwinExtensions[i], TRUE); +} #if defined(DDXBEFORERESET) /* @@ -681,7 +706,6 @@ OsVendorInit(void) } } - static void winUseMsg(void) { @@ -895,6 +919,8 @@ InitOutput(ScreenInfo * screenInfo, int argc, char *argv[]) { int i; + XwinExtensionInit(); + /* Log the command line */ winLogCommandLine(argc, argv); |