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

Commit 978dbf9c authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "ContentRecorder: fix NPE problem to avoid crash when start recording." into main

parents e1774a3f 2204746d
Loading
Loading
Loading
Loading
+10 −2
Original line number Diff line number Diff line
@@ -350,6 +350,15 @@ final class ContentRecorder implements WindowContainerListener {
            return;
        }

        final SurfaceControl sourceSurface = mRecordedWindowContainer.getSurfaceControl();
        if (sourceSurface == null || !sourceSurface.isValid()) {
            ProtoLog.v(WM_DEBUG_CONTENT_RECORDING,
                    "Content Recording: Unable to start recording for display %d since the "
                            + "surface is null or have been released.",
                    mDisplayContent.getDisplayId());
            return;
        }

        final int contentToRecord = mContentRecordingSession.getContentToRecord();

        // TODO(b/297514518) Do not start capture if the app is in PIP, the bounds are inaccurate.
@@ -377,8 +386,7 @@ final class ContentRecorder implements WindowContainerListener {
                mDisplayContent.getDisplayId(), mDisplayContent.getDisplayInfo().state);

        // Create a mirrored hierarchy for the SurfaceControl of the DisplayArea to capture.
        mRecordedSurface = SurfaceControl.mirrorSurface(
                mRecordedWindowContainer.getSurfaceControl());
        mRecordedSurface = SurfaceControl.mirrorSurface(sourceSurface);
        SurfaceControl.Transaction transaction =
                mDisplayContent.mWmService.mTransactionFactory.get()
                        // Set the mMirroredSurface's parent to the root SurfaceControl for this