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

Commit 788a07fc authored by Andreas Huber's avatar Andreas Huber
Browse files

Return a runtime error instead of assertion if seeking beyond EOS in mpeg4 files.

Change-Id: If6531b4a1ff45460cfcdcc04764c5c63a2f5a749
related-to-bug: 5418914
parent d20bf067
Loading
Loading
Loading
Loading
+6 −4
Original line number Diff line number Diff line
@@ -1972,6 +1972,12 @@ status_t MPEG4Source::read(
                    sampleIndex, &syncSampleIndex, findFlags);
        }

        uint32_t sampleTime;
        if (err == OK) {
            err = mSampleTable->getMetaDataForSample(
                    sampleIndex, NULL, NULL, &sampleTime);
        }

        if (err != OK) {
            if (err == ERROR_OUT_OF_RANGE) {
                // An attempt to seek past the end of the stream would
@@ -1984,10 +1990,6 @@ status_t MPEG4Source::read(
            return err;
        }

        uint32_t sampleTime;
        CHECK_EQ((status_t)OK, mSampleTable->getMetaDataForSample(
                    sampleIndex, NULL, NULL, &sampleTime));

        if (mode == ReadOptions::SEEK_CLOSEST) {
            targetSampleTimeUs = (sampleTime * 1000000ll) / mTimescale;
        }