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

Commit f64b36de authored by Chong Zhang's avatar Chong Zhang
Browse files

fix failure in MediaCodecTest#testException

reset codec after failed configure()
Bug: 17418876

Change-Id: I21ff8a0751dae6a164678015142e11d481403bed
parent d3a5ff9a
Loading
Loading
Loading
Loading
+14 −1
Original line number Diff line number Diff line
@@ -270,7 +270,20 @@ status_t MediaCodec::configure(
    }

    sp<AMessage> response;
    return PostAndAwaitResponse(msg, &response);
    status_t err = PostAndAwaitResponse(msg, &response);

    if (err != OK && err != INVALID_OPERATION) {
        // MediaCodec now set state to UNINITIALIZED upon any fatal error.
        // To maintain backward-compatibility, do a reset() to put codec
        // back into INITIALIZED state.
        // But don't reset if the err is INVALID_OPERATION, which means
        // the configure failure is due to wrong state.

        ALOGE("configure failed with err 0x%08x, resetting...", err);
        reset();
    }

    return err;
}

status_t MediaCodec::createInputSurface(