summaryrefslogtreecommitdiff
path: root/hw
diff options
context:
space:
mode:
authorSebastien Bacher <seb128@ubuntu.com>2013-08-23 21:21:44 +0200
committerEric Anholt <eric@anholt.net>2013-09-03 14:35:39 -0700
commitabc2bfca16adcd1e5657d4ce54f4e1335d5ed53f (patch)
tree161b9ec6390fc39009845d733e05576c29298092 /hw
parentaa5534ec6931ffcc81cca76b98785d57de8e0e52 (diff)
kdrive: initialize GLX for xephyr
Like commit ac1a60e7b6f06fd075cc5bf55d6bc67206a01d29, re-add initialization of GLX after it was accidentally dropped from non-Xorg servers in 5f5bbbe543f65c48ecbb5cce80116a86ca3fbe86. Signed-off-by: Sebastien Bacher <seb128@ubuntu.com> Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=62346 Reviewed-by: Eric Anholt <eric@anholt.net> Reviewed-by: Adam Jackson <ajax@redhat.com> Reviewed-by: Julien Cristau <jcristau@debian.org> Signed-off-by: Eric Anholt <eric@anholt.net>
Diffstat (limited to 'hw')
-rw-r--r--hw/kdrive/ephyr/ephyrinit.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/hw/kdrive/ephyr/ephyrinit.c b/hw/kdrive/ephyr/ephyrinit.c
index 966e32181..cf8bc9073 100644
--- a/hw/kdrive/ephyr/ephyrinit.c
+++ b/hw/kdrive/ephyr/ephyrinit.c
@@ -28,6 +28,7 @@
#endif
#include "ephyr.h"
#include "ephyrlog.h"
+#include "glx_extinit.h"
extern Window EphyrPreExistingHostWin;
extern Bool EphyrWantGrayScale;
@@ -54,9 +55,28 @@ InitCard(char *name)
KdCardInfoAdd(&ephyrFuncs, 0);
}
+static const ExtensionModule ephyrExtensions[] = {
+#ifdef GLXEXT
+ { GlxExtensionInit, "GLX", &noGlxExtension },
+#endif
+};
+
+static
+void ephyrExtensionInit(void)
+{
+ int i;
+
+ for (i = 0; i < ARRAY_SIZE(ephyrExtensions); i++)
+ LoadExtension(&ephyrExtensions[i], TRUE);
+}
+
+
void
InitOutput(ScreenInfo * pScreenInfo, int argc, char **argv)
{
+ if (serverGeneration == 1)
+ ephyrExtensionInit();
+
KdInitOutput(pScreenInfo, argc, argv);
}