summaryrefslogtreecommitdiff
path: root/dix
diff options
context:
space:
mode:
authorAdam Jackson <ajax@redhat.com>2018-04-23 16:19:13 -0400
committerAdam Jackson <ajax@redhat.com>2018-04-24 14:36:04 -0400
commitfc25bceb515e5c18eecdebf5933c3e05cdac1a5a (patch)
tree77c4c03a843e0aec9dad30c1ff13355a2ee4b803 /dix
parent73a1cb9c92c936c2c1ae3d69fed743e21916d687 (diff)
dix: Allow an extension to disable itself
GLX registers an extension before we know if there are any screens that can actually do it. It's inconvenient to shrink the extension list, so instead allow the extension to simply zero out its base opcode to indicate that it needed to panic and disable itself. Signed-off-by: Adam Jackson <ajax@redhat.com>
Diffstat (limited to 'dix')
-rw-r--r--dix/extension.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/dix/extension.c b/dix/extension.c
index 7d432c722..9c158ba93 100644
--- a/dix/extension.c
+++ b/dix/extension.c
@@ -215,6 +215,8 @@ ExtensionAvailable(ClientPtr client, ExtensionEntry *ext)
{
if (XaceHook(XACE_EXT_ACCESS, client, ext) != Success)
return FALSE;
+ if (!ext->base)
+ return FALSE;
return TRUE;
}