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

Commit 91b0d43a authored by Andreas Huber's avatar Andreas Huber Committed by Android (Google) Code Review
Browse files

Merge "Unwedge ACodec if allocating output buffers fails while reconfiguring." into jb-dev

parents 40fe18f2 755b9861
Loading
Loading
Loading
Loading
+8 −5
Original line number Diff line number Diff line
@@ -3472,11 +3472,14 @@ bool ACodec::OutputPortSettingsChangedState::onOMXEvent(

                    mCodec->signalError(OMX_ErrorUndefined, err);

                    // This is technically not correct, since we were unable
                    // to allocate output buffers and therefore the output port
                    // remains disabled. It is necessary however to allow us
                    // to shutdown the codec properly.
                    mCodec->changeState(mCodec->mExecutingState);
                    // This is technically not correct, but appears to be
                    // the only way to free the component instance.
                    // Controlled transitioning from excecuting->idle
                    // and idle->loaded seem impossible probably because
                    // the output port never finishes re-enabling.
                    mCodec->mShutdownInProgress = true;
                    mCodec->mKeepComponentAllocated = false;
                    mCodec->changeState(mCodec->mLoadedState);
                }

                return true;