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

Commit 7280b02e authored by Jon Larimer's avatar Jon Larimer Committed by Android Git Automerger
Browse files

am 4829dea8: Merge "Fix multiple division-by-zero conditions in MPEG4 parsing"

* commit '4829dea8':
  Fix multiple division-by-zero conditions in MPEG4 parsing
parents 4eba6fd3 4829dea8
Loading
Loading
Loading
Loading
+5 −3
Original line number Diff line number Diff line
@@ -1202,7 +1202,7 @@ status_t MPEG4Extractor::parseChunk(off64_t *offset, int depth) {
                    duration = ntohl(duration32);
                }
            }
            if (duration != 0) {
            if (duration != 0 && mLastTrack->timescale != 0) {
                mLastTrack->meta->setInt64(
                        kKeyDuration, (duration * 1000000) / mLastTrack->timescale);
            }
@@ -1776,7 +1776,7 @@ status_t MPEG4Extractor::parseChunk(off64_t *offset, int depth) {
                }
                duration = d32;
            }
            if (duration != 0) {
            if (duration != 0 && mHeaderTimescale != 0) {
                mFileMetaData->setInt64(kKeyDuration, duration * 1000000 / mHeaderTimescale);
            }

@@ -1825,7 +1825,7 @@ status_t MPEG4Extractor::parseChunk(off64_t *offset, int depth) {
                return ERROR_MALFORMED;
            }

            if (duration != 0) {
            if (duration != 0 && mHeaderTimescale != 0) {
                mFileMetaData->setInt64(kKeyDuration, duration * 1000000 / mHeaderTimescale);
            }

@@ -2042,6 +2042,8 @@ status_t MPEG4Extractor::parseSegmentIndex(off64_t offset, size_t size) {
        return ERROR_MALFORMED;
    }
    ALOGV("sidx refid/timescale: %d/%d", referenceId, timeScale);
    if (timeScale == 0)
        return ERROR_MALFORMED;

    uint64_t earliestPresentationTime;
    uint64_t firstOffset;