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

Commit 72323a4c authored by Kim Zhang's avatar Kim Zhang Committed by Steve Kondik
Browse files

libstagefright: fix output buffer is not released by Writer when stopping

  When video recording is stopped due to max file size/duration reached,
  there is a media server crash caused by one output is not released by
  MPEG4Writer. So release the buffer in these cases.

Change-Id: Ib7d15fcf21aea06e856e9adc7b0bcdd01a376328
CRs-Fixed: 782013
parent 1610dca9
Loading
Loading
Loading
Loading
+6 −0
Original line number Diff line number Diff line
@@ -2264,10 +2264,14 @@ status_t MPEG4Writer::Track::threadEntry() {

        if (mOwner->exceedsFileSizeLimit()) {
            mOwner->notify(MEDIA_RECORDER_EVENT_INFO, MEDIA_RECORDER_INFO_MAX_FILESIZE_REACHED, 0);
            copy->release();
            copy = NULL;
            break;
        }
        if (mOwner->exceedsFileDurationLimit()) {
            mOwner->notify(MEDIA_RECORDER_EVENT_INFO, MEDIA_RECORDER_INFO_MAX_DURATION_REACHED, 0);
            copy->release();
            copy = NULL;
            break;
        }

@@ -2384,6 +2388,8 @@ status_t MPEG4Writer::Track::threadEntry() {
            copy->release();
            err = UNKNOWN_ERROR;
            mSource->notifyError(err);
            copy->release();
            copy = NULL;
            return err;
        }