Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 4804404e authored by John Reck's avatar John Reck Committed by Android (Google) Code Review
Browse files

Merge "Fix NPE in TextureView" into nyc-mr1-dev

parents ccd9ff61 7e237189
Loading
Loading
Loading
Loading
+5 −4
Original line number Diff line number Diff line
@@ -229,7 +229,6 @@ public class TextureView extends View {
    @Override
    protected void destroyHardwareResources() {
        destroyHardwareLayer();
        mUpdateSurface = mSurface != null;
    }

    private void destroyHardwareLayer() {
@@ -376,17 +375,17 @@ public class TextureView extends View {
            }

            mLayer = mAttachInfo.mHardwareRenderer.createTextureLayer();
            if (!mUpdateSurface) {
            boolean createNewSurface = (mSurface == null);
            if (createNewSurface) {
                // Create a new SurfaceTexture for the layer.
                mSurface = new SurfaceTexture(false);
                mLayer.setSurfaceTexture(mSurface);
                nCreateNativeWindow(mSurface);
            }
            mSurface.setDefaultBufferSize(getWidth(), getHeight());

            mSurface.setOnFrameAvailableListener(mUpdateListener, mAttachInfo.mHandler);

            if (mListener != null && !mUpdateSurface) {
            if (mListener != null && createNewSurface) {
                mListener.onSurfaceTextureAvailable(mSurface, getWidth(), getHeight());
            }
            mLayer.setLayerPaint(mLayerPaint);
@@ -745,9 +744,11 @@ public class TextureView extends View {
                    "released SurfaceTexture");
        }
        if (mSurface != null) {
            nDestroyNativeWindow();
            mSurface.release();
        }
        mSurface = surfaceTexture;
        nCreateNativeWindow(mSurface);

        /*
         * If the view is visible and we already made a layer, update the