Move display extension initialization to DisplayImpl.
BUG=angle:658
Change-Id: I44d95fad4e1be5cc76f443d724defd37da4a268f
Reviewed-on: https://chromium-review.googlesource.com/234762
Reviewed-by: Kenneth Russell <kbr@chromium.org>
Reviewed-by: Brandon Jones <bajones@chromium.org>
Tested-by: Geoff Lang <geofflang@chromium.org>
diff --git a/src/libANGLE/renderer/DisplayImpl.cpp b/src/libANGLE/renderer/DisplayImpl.cpp
index 8da133c..1e358b9 100644
--- a/src/libANGLE/renderer/DisplayImpl.cpp
+++ b/src/libANGLE/renderer/DisplayImpl.cpp
@@ -13,6 +13,11 @@
namespace rx
{
+DisplayImpl::DisplayImpl()
+ : mExtensionsInitialized(false)
+{
+}
+
DisplayImpl::~DisplayImpl()
{
while (!mSurfaceSet.empty())
@@ -27,4 +32,15 @@
SafeDelete(surface);
}
+const egl::DisplayExtensions &DisplayImpl::getExtensions() const
+{
+ if (!mExtensionsInitialized)
+ {
+ generateExtensions(&mExtensions);
+ mExtensionsInitialized = true;
+ }
+
+ return mExtensions;
+}
+
}