Check that the requested extension is supported by the backend.
Previously, we would only check that the extension was requestable and
not verify that the driver could support it.
BUG=angleproject:1523
Change-Id: I5273920fc08a20beda54d4afaeb406c6c1c2056f
Reviewed-on: https://chromium-review.googlesource.com/723559
Commit-Queue: Geoff Lang <geofflang@chromium.org>
Reviewed-by: Corentin Wallez <cwallez@chromium.org>
diff --git a/src/libANGLE/validationES2.cpp b/src/libANGLE/validationES2.cpp
index d073c69..baec2cc 100644
--- a/src/libANGLE/validationES2.cpp
+++ b/src/libANGLE/validationES2.cpp
@@ -4224,7 +4224,7 @@
return true;
}
-bool ValidateRequestExtensionANGLE(ValidationContext *context, const GLchar *name)
+bool ValidateRequestExtensionANGLE(Context *context, const GLchar *name)
{
if (!context->getExtensions().requestExtension)
{
@@ -4232,9 +4232,7 @@
return false;
}
- const ExtensionInfoMap &extensionInfos = GetExtensionInfoMap();
- auto extension = extensionInfos.find(name);
- if (extension == extensionInfos.end() || !extension->second.Requestable)
+ if (!context->isExtensionRequestable(name))
{
context->handleError(InvalidOperation() << "Extension " << name << " is not requestable.");
return false;