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

Commit fada886d authored by Marco Nelissen's avatar Marco Nelissen Committed by android-build-merger
Browse files

Merge "Fix memory leak in MPEG2PSExtractor" am: 52a42dde

am: 8f56bd1e

Change-Id: I2015e010bca7320d50f6d51ded4b33e9bac5beb5
parents f11fc226 8f56bd1e
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -111,8 +111,10 @@ MPEG2PSExtractor::MPEG2PSExtractor(DataSourceHelper *source)
    AMediaFormat *meta = AMediaFormat_new();
    for (size_t i = mTracks.size(); i > 0;) {
        i--;
        if (mTracks.valueAt(i)->getFormat(meta) != AMEDIA_OK) {
        Track *track = mTracks.valueAt(i);
        if (track->getFormat(meta) != AMEDIA_OK) {
            mTracks.removeItemsAt(i);
            delete track;
        }
    }
    AMediaFormat_delete(meta);
@@ -122,6 +124,10 @@ MPEG2PSExtractor::MPEG2PSExtractor(DataSourceHelper *source)

MPEG2PSExtractor::~MPEG2PSExtractor() {
    delete mDataSource;
    for (size_t i = mTracks.size(); i > 0;) {
        i--;
        delete mTracks.valueAt(i);
    }
}

size_t MPEG2PSExtractor::countTracks() {
@@ -793,7 +799,9 @@ MPEG2PSExtractor::WrappedTrack::~WrappedTrack() {
}

media_status_t MPEG2PSExtractor::WrappedTrack::start() {
    delete mTrack->mBufferGroup;
    mTrack->mBufferGroup = mBufferGroup;
    mBufferGroup = nullptr;
    return mTrack->start();
}