diff options
| author | Romain Guy <romainguy@google.com> | 2011-08-03 16:23:35 -0700 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2011-08-03 16:23:35 -0700 |
| commit | 8c8333c80ea6f178294c054bc9de233105134ce2 (patch) | |
| tree | 6b898415976972fde0e925a1156cde3bca892675 /core/java/android/view/ViewRootImpl.java | |
| parent | 271865565a5c18089853d3e9c804c941742511d3 (diff) | |
| parent | 1d0c708961f824ac5171238c205a7bf328d5d8a5 (diff) | |
Merge "Destroy the EGL surface when the ViewRootImpl surface is invalid Bug #5109839"
Diffstat (limited to 'core/java/android/view/ViewRootImpl.java')
| -rw-r--r-- | core/java/android/view/ViewRootImpl.java | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/core/java/android/view/ViewRootImpl.java b/core/java/android/view/ViewRootImpl.java index 911bf2f6ee7c..ec4c5a29a0f6 100644 --- a/core/java/android/view/ViewRootImpl.java +++ b/core/java/android/view/ViewRootImpl.java @@ -1253,6 +1253,11 @@ public final class ViewRootImpl extends Handler implements ViewParent, mScroller.abortAnimation(); } disposeResizeBuffer(); + // Our surface is gone + if (mAttachInfo.mHardwareRenderer != null && + mAttachInfo.mHardwareRenderer.isEnabled()) { + mAttachInfo.mHardwareRenderer.destroy(true); + } } else if (surfaceGenerationId != mSurface.getGenerationId() && mSurfaceHolder == null && mAttachInfo.mHardwareRenderer != null) { fullRedrawNeeded = true; @@ -1273,7 +1278,7 @@ public final class ViewRootImpl extends Handler implements ViewParent, } } catch (RemoteException e) { } - + if (DEBUG_ORIENTATION) Log.v( TAG, "Relayout returned: frame=" + frame + ", surface=" + mSurface); |
