diff options
author | marha <marha@users.sourceforge.net> | 2014-08-30 13:45:43 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2014-08-30 13:45:43 +0200 |
commit | 3293021e6f582c7348667e7638941620134525e1 (patch) | |
tree | 5d8d3da8242ff7828fb6964bed19b13d74d48704 /xorg-server/dri3 | |
parent | 0a9ab140bb01b96888e313466a73e26e5156f22d (diff) | |
parent | e21655632e3fd40b7f6a5cc3c7f3c379d54557c4 (diff) | |
download | vcxsrv-3293021e6f582c7348667e7638941620134525e1.tar.gz vcxsrv-3293021e6f582c7348667e7638941620134525e1.tar.bz2 vcxsrv-3293021e6f582c7348667e7638941620134525e1.zip |
Merge remote-tracking branch 'origin/released'
Conflicts:
xorg-server/hw/kdrive/ephyr/ephyrinit.c
Diffstat (limited to 'xorg-server/dri3')
-rw-r--r-- | xorg-server/dri3/dri3.c | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/xorg-server/dri3/dri3.c b/xorg-server/dri3/dri3.c index 76e07b40e..385862a3b 100644 --- a/xorg-server/dri3/dri3.c +++ b/xorg-server/dri3/dri3.c @@ -30,6 +30,8 @@ int dri3_request; DevPrivateKeyRec dri3_screen_private_key; DevPrivateKeyRec dri3_window_private_key; +static int dri3_screen_generation; + static Bool dri3_close_screen(ScreenPtr screen) { @@ -44,6 +46,8 @@ dri3_close_screen(ScreenPtr screen) Bool dri3_screen_init(ScreenPtr screen, dri3_screen_info_ptr info) { + dri3_screen_generation = serverGeneration; + if (!dixRegisterPrivateKey(&dri3_screen_private_key, PRIVATE_SCREEN, 0)) return FALSE; @@ -68,6 +72,12 @@ dri3_extension_init(void) ExtensionEntry *extension; int i; + /* If no screens support DRI3, there's no point offering the + * extension at all + */ + if (dri3_screen_generation != serverGeneration) + return; + #ifdef PANORAMIX if (!noPanoramiXExtension) return; |