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

Commit bfd5b386 authored by Android (Google) Code Review's avatar Android (Google) Code Review
Browse files

Merge change If68c168d into eclair-mr2

* changes:
  Some cleanup of OMXCodec code, make sure to ignore 0-length output buffers in the metadata retriever.
parents 3f9faf47 f68c168d
Loading
Loading
Loading
Loading
+0 −1
Original line number Diff line number Diff line
@@ -106,7 +106,6 @@ private:

    sp<IOMX> mOMX;
    IOMX::node_id mNode;
    sp<OMXCodecObserver> mObserver;
    uint32_t mQuirks;
    bool mIsEncoder;
    char *mMIME;
+10 −2
Original line number Diff line number Diff line
@@ -129,11 +129,19 @@ VideoFrame *StagefrightMetadataRetriever::captureFrame() {

    decoder->start();

    MediaBuffer *buffer;
    // Read one output buffer, ignore format change notifications
    // and spurious empty buffers.

    MediaBuffer *buffer = NULL;
    status_t err;
    do {
        if (buffer != NULL) {
            buffer->release();
            buffer = NULL;
        }
        err = decoder->read(&buffer);
    } while (err == INFO_FORMAT_CHANGED);
    } while (err == INFO_FORMAT_CHANGED
             || (buffer != NULL && buffer->range_length() == 0));

    if (err != OK) {
        CHECK_EQ(buffer, NULL);
+2 −2
Original line number Diff line number Diff line
@@ -1065,8 +1065,8 @@ static bool formatHasNotablyChanged(
        return false;
    }

    if (from.get() == NULL && to.get() != NULL
        || from.get() != NULL && to.get() == NULL) {
    if ((from.get() == NULL && to.get() != NULL)
        || (from.get() != NULL && to.get() == NULL)) {
        return true;
    }