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

Commit 9facfce6 authored by Steven Moreland's avatar Steven Moreland
Browse files

libbinder_ndk: consider empty result as false

associateClassInternal returns std::optional<bool> where nullopt means
not sure yet, true means success, and false means failure. However,
there was one case where we considered nullopt to mean true.

Bug: N/A
Test: atest aidl_integration_test
Change-Id: I7caef23dfbd8d9a562a21a0f369fa22c976a8da0
parent 00633648
Loading
Loading
Loading
Loading
+2 −1
Original line number Diff line number Diff line
@@ -99,6 +99,7 @@ std::optional<bool> AIBinder::associateClassInternal(const AIBinder_Class* clazz
    if (set) {
        // if this is a local object, it's not one known to libbinder_ndk
        mClazz = clazz;
        return true;
    }

    return {};
@@ -127,7 +128,7 @@ bool AIBinder::associateClass(const AIBinder_Class* clazz) {
        return false;
    }

    return associateClassInternal(clazz, newDescriptor, true).value_or(true);
    return associateClassInternal(clazz, newDescriptor, true).value();
}

ABBinder::ABBinder(const AIBinder_Class* clazz, void* userData)