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

Commit 1b312a6f authored by Marco Nelissen's avatar Marco Nelissen Committed by Android (Google) Code Review
Browse files

Merge "Fix race condition in AwesomePlayer"

parents 3c35c48a 4d462fbd
Loading
Loading
Loading
Loading
+4 −2
Original line number Diff line number Diff line
@@ -2217,6 +2217,10 @@ status_t AwesomePlayer::finishSetDataSource_l() {

        mLock.unlock();
        status_t err = mConnectingDataSource->connect(mUri, &mUriHeaders);
        // force connection at this point, to avoid a race condition between getMIMEType and the
        // caching datasource constructed below, which could result in multiple requests to the
        // server, and/or failed connections.
        String8 contentType = mConnectingDataSource->getMIMEType();
        mLock.lock();

        if (err != OK) {
@@ -2247,8 +2251,6 @@ status_t AwesomePlayer::finishSetDataSource_l() {

        mConnectingDataSource.clear();

        String8 contentType = dataSource->getMIMEType();

        if (strncasecmp(contentType.string(), "audio/", 6)) {
            // We're not doing this for streams that appear to be audio-only
            // streams to ensure that even low bandwidth streams start