Commit cf0d8fef by Geoff Lang Committed by Commit Bot

Remove the proxy context.

BUG=angleproject:2668 BUG=angleproject:2714 Change-Id: I9f375caa605e13aae04e8051a779515f8ddfb93a Reviewed-on: https://chromium-review.googlesource.com/1155105 Commit-Queue: Geoff Lang <geofflang@chromium.org> Reviewed-by: 's avatarYuly Novikov <ynovikov@chromium.org> Reviewed-by: 's avatarJamie Madill <jmadill@chromium.org>
parent 9d05b930
...@@ -387,8 +387,7 @@ Display::Display(EGLenum platform, EGLNativeDisplayType displayId, Device *eglDe ...@@ -387,8 +387,7 @@ Display::Display(EGLenum platform, EGLNativeDisplayType displayId, Device *eglDe
mPlatform(platform), mPlatform(platform),
mTextureManager(nullptr), mTextureManager(nullptr),
mMemoryProgramCache(gl::kDefaultMaxProgramCacheMemoryBytes), mMemoryProgramCache(gl::kDefaultMaxProgramCacheMemoryBytes),
mGlobalTextureShareGroupUsers(0), mGlobalTextureShareGroupUsers(0)
mProxyContext(this)
{ {
} }
...@@ -420,8 +419,6 @@ Display::~Display() ...@@ -420,8 +419,6 @@ Display::~Display()
UNREACHABLE(); UNREACHABLE();
} }
mProxyContext.reset(nullptr);
SafeDelete(mDevice); SafeDelete(mDevice);
SafeDelete(mImplementation); SafeDelete(mImplementation);
} }
...@@ -532,12 +529,6 @@ Error Display::initialize() ...@@ -532,12 +529,6 @@ Error Display::initialize()
ASSERT(mDevice != nullptr); ASSERT(mDevice != nullptr);
} }
mProxyContext.reset(nullptr);
gl::Context *proxyContext =
new gl::Context(mImplementation, nullptr, nullptr, nullptr, nullptr, egl::AttributeMap(),
mDisplayExtensions, GetClientExtensions());
mProxyContext.reset(proxyContext);
mInitialized = true; mInitialized = true;
return NoError(); return NoError();
...@@ -577,9 +568,6 @@ Error Display::terminate(const Thread *thread) ...@@ -577,9 +568,6 @@ Error Display::terminate(const Thread *thread)
ANGLE_TRY(destroySurface(*mState.surfaceSet.begin())); ANGLE_TRY(destroySurface(*mState.surfaceSet.begin()));
} }
// Allow the EGL objects that are being deleted to use the proxy context.
mProxyContext.reset(nullptr);
mConfigSet.clear(); mConfigSet.clear();
if (mDevice != nullptr && mDevice->getOwningDisplay() != nullptr) if (mDevice != nullptr && mDevice->getOwningDisplay() != nullptr)
......
...@@ -166,8 +166,6 @@ class Display final : public LabeledObject, angle::NonCopyable ...@@ -166,8 +166,6 @@ class Display final : public LabeledObject, angle::NonCopyable
const DisplayState &getState() const { return mState; } const DisplayState &getState() const { return mState; }
gl::Context *getProxyContext() const { return mProxyContext.get(); }
private: private:
Display(EGLenum platform, EGLNativeDisplayType displayId, Device *eglDevice); Display(EGLenum platform, EGLNativeDisplayType displayId, Device *eglDevice);
...@@ -212,10 +210,6 @@ class Display final : public LabeledObject, angle::NonCopyable ...@@ -212,10 +210,6 @@ class Display final : public LabeledObject, angle::NonCopyable
gl::TextureManager *mTextureManager; gl::TextureManager *mTextureManager;
gl::MemoryProgramCache mMemoryProgramCache; gl::MemoryProgramCache mMemoryProgramCache;
size_t mGlobalTextureShareGroupUsers; size_t mGlobalTextureShareGroupUsers;
// This gl::Context is a simple proxy to the Display for the GL back-end entry points
// that need access to implementation-specific data, like a Renderer object.
angle::UniqueObjectPointer<gl::Context, Display> mProxyContext;
}; };
} // namespace egl } // namespace egl
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment