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

Commit 9cb18980 authored by Andreas Huber's avatar Andreas Huber Committed by Android Git Automerger
Browse files

am 8b5161c2: am d68cda47: An attempt to unregister a handler that\'s no longer...

am 8b5161c2: am d68cda47: An attempt to unregister a handler that\'s no longer registered should not cause an assertion.

Merge commit '8b5161c2'

* commit '8b5161c2':
  An attempt to unregister a handler that's no longer registered should not cause an assertion.
parents 952912fa 8b5161c2
Loading
Loading
Loading
Loading
+8 −3
Original line number Diff line number Diff line
@@ -54,7 +54,10 @@ void ALooperRoster::unregisterHandler(ALooper::handler_id handlerID) {
    Mutex::Autolock autoLock(mLock);

    ssize_t index = mHandlers.indexOfKey(handlerID);
    CHECK_GE(index, 0);

    if (index < 0) {
        return;
    }

    const HandlerInfo &info = mHandlers.valueAt(index);

@@ -84,7 +87,8 @@ void ALooperRoster::postMessage(

    if (looper == NULL) {
        LOGW("failed to post message. "
             "Target handler still registered, but object gone.");
             "Target handler %d still registered, but object gone.",
             msg->target());

        mHandlers.removeItemsAt(index);
        return;
@@ -111,7 +115,8 @@ void ALooperRoster::deliverMessage(const sp<AMessage> &msg) {

        if (handler == NULL) {
            LOGW("failed to deliver message. "
                 "Target handler registered, but object gone.");
                 "Target handler %d registered, but object gone.",
                 msg->target());

            mHandlers.removeItemsAt(index);
            return;