diff options
author | Derek Sollenberger <djsollen@google.com> | 2018-09-21 00:58:05 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2018-09-21 00:58:05 +0000 |
commit | c49e5b78f6a6f041da3537cf748563de923bf3b4 (patch) | |
tree | 3e58aaaa8455a04a56363ee9914e274b170e0458 /libs/hwui/renderthread/RenderThread.cpp | |
parent | 4f797ff273d1b5a3a93bec223599f6aaff520c1c (diff) | |
parent | 28a4d9935c214374cbd487d3419abb80f57d6f80 (diff) |
Merge changes Ie9436715,Ib3054822
* changes:
Refactor RenderState and remove unused functionality.
Fix crash when EGLSurface is no longer valid.
Diffstat (limited to 'libs/hwui/renderthread/RenderThread.cpp')
-rw-r--r-- | libs/hwui/renderthread/RenderThread.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/libs/hwui/renderthread/RenderThread.cpp b/libs/hwui/renderthread/RenderThread.cpp index a5dcc72636d1..207673c1c8dd 100644 --- a/libs/hwui/renderthread/RenderThread.cpp +++ b/libs/hwui/renderthread/RenderThread.cpp @@ -177,7 +177,6 @@ void RenderThread::requireGlContext() { return; } mEglManager->initialize(); - renderState().onContextCreated(); #ifdef HWUI_GLES_WRAP_ENABLED debug::GlesDriver* driver = debug::GlesDriver::get(); @@ -201,7 +200,6 @@ void RenderThread::requireGlContext() { void RenderThread::destroyGlContext() { if (mEglManager->hasEglContext()) { setGrContext(nullptr); - renderState().onContextDestroyed(); mEglManager->destroy(); } } @@ -243,10 +241,12 @@ Readback& RenderThread::readback() { void RenderThread::setGrContext(sk_sp<GrContext> context) { mCacheManager->reset(context); if (mGrContext) { + mRenderState->onContextDestroyed(); mGrContext->releaseResourcesAndAbandonContext(); } mGrContext = std::move(context); if (mGrContext) { + mRenderState->onContextCreated(); DeviceInfo::setMaxTextureSize(mGrContext->maxRenderTargetSize()); } } |