diff options
| -rw-r--r-- | core/java/android/view/HardwareRenderer.java | 7 | ||||
| -rw-r--r-- | core/java/android/view/ViewRootImpl.java | 2 |
2 files changed, 5 insertions, 4 deletions
diff --git a/core/java/android/view/HardwareRenderer.java b/core/java/android/view/HardwareRenderer.java index 5b592e037107..2bf16d89616c 100644 --- a/core/java/android/view/HardwareRenderer.java +++ b/core/java/android/view/HardwareRenderer.java @@ -413,8 +413,8 @@ public abstract class HardwareRenderer { if (error != EGL_SUCCESS) { // something bad has happened revert to // normal rendering. - fallback(error != EGL11.EGL_CONTEXT_LOST); Log.w(LOG_TAG, "EGL error: " + GLUtils.getEGLErrorString(error)); + fallback(error != EGL11.EGL_CONTEXT_LOST); } } } @@ -702,8 +702,9 @@ public abstract class HardwareRenderer { @Override void setup(int width, int height) { - checkCurrent(); - mCanvas.setViewport(width, height); + if (validate()) { + mCanvas.setViewport(width, height); + } } boolean canDraw() { diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index 6ea863ff9709..a0cc28761ca0 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -1352,7 +1352,7 @@ public final class ViewRootImpl extends Handler implements ViewParent, mAttachInfo.mHardwareRenderer != null && mAttachInfo.mHardwareRenderer.isEnabled())) { mAttachInfo.mHardwareRenderer.setup(mWidth, mHeight); - if (!hwInitialized) { + if (!hwInitialized && mAttachInfo.mHardwareRenderer.isEnabled()) { mAttachInfo.mHardwareRenderer.invalidate(mHolder); } } |