diff options
author | John Reck <jreck@google.com> | 2015-08-04 19:38:15 +0000 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2015-08-04 19:38:15 +0000 |
commit | 70e5db9413f82bf1f000bd99b3d2dbecf6e4ab04 (patch) | |
tree | 780815b24ed46d5c4cebc208af0a8978fc23a27b /libs | |
parent | 35a1a2095cb6208a7614c35fe19fced6026d3db1 (diff) | |
parent | 95cd24bb9d000eb541bc7ec7e6b53d1c7e313076 (diff) | |
download | frameworks_base-70e5db9413f82bf1f000bd99b3d2dbecf6e4ab04.zip frameworks_base-70e5db9413f82bf1f000bd99b3d2dbecf6e4ab04.tar.gz frameworks_base-70e5db9413f82bf1f000bd99b3d2dbecf6e4ab04.tar.bz2 |
Merge "Fix crash in kModeProcessNoContext" into mnc-dev
Diffstat (limited to 'libs')
-rw-r--r-- | libs/hwui/renderstate/RenderState.cpp | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/libs/hwui/renderstate/RenderState.cpp b/libs/hwui/renderstate/RenderState.cpp index 3ebd57b..1e39bfa 100644 --- a/libs/hwui/renderstate/RenderState.cpp +++ b/libs/hwui/renderstate/RenderState.cpp @@ -124,9 +124,15 @@ void RenderState::bindFramebuffer(GLuint fbo) { } void RenderState::invokeFunctor(Functor* functor, DrawGlInfo::Mode mode, DrawGlInfo* info) { - interruptForFunctorInvoke(); - (*functor)(mode, info); - resumeFromFunctorInvoke(); + if (mode == DrawGlInfo::kModeProcessNoContext) { + // If there's no context we don't need to interrupt as there's + // no gl state to save/restore + (*functor)(mode, info); + } else { + interruptForFunctorInvoke(); + (*functor)(mode, info); + resumeFromFunctorInvoke(); + } } void RenderState::interruptForFunctorInvoke() { |