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

Commit 6b324388 authored by Steven Moreland's avatar Steven Moreland Committed by Automerger Merge Worker
Browse files

Merge "libbinder: LazyServiceRegistrar log w/ error codes" am: c9fb9f92 am:...

Merge "libbinder: LazyServiceRegistrar log w/ error codes" am: c9fb9f92 am: 105d942b am: e7215828 am: 7474ca77

Original change: https://android-review.googlesource.com/c/platform/frameworks/native/+/1701568

Change-Id: I7ab9c5c45605fe012aa5dc5a91264ff36c502f55
parents 3a023c4f 7474ca77
Loading
Loading
Loading
Loading
+13 −9
Original line number Original line Diff line number Diff line
@@ -123,16 +123,20 @@ bool ClientCounterCallbackImpl::registerService(const sp<IBinder>& service, cons
    std::string regStr = (reRegister) ? "Re-registering" : "Registering";
    std::string regStr = (reRegister) ? "Re-registering" : "Registering";
    ALOGI("%s service %s", regStr.c_str(), name.c_str());
    ALOGI("%s service %s", regStr.c_str(), name.c_str());


    if (!manager->addService(name.c_str(), service, allowIsolated, dumpFlags).isOk()) {
    if (Status status = manager->addService(name.c_str(), service, allowIsolated, dumpFlags);
        ALOGE("Failed to register service %s", name.c_str());
        !status.isOk()) {
        ALOGE("Failed to register service %s (%s)", name.c_str(), status.toString8().c_str());
        return false;
        return false;
    }
    }


    if (!reRegister) {
    if (!reRegister) {
        if (!manager->registerClientCallback(name, service,
        if (Status status =
                                             sp<android::os::IClientCallback>::fromExisting(this))
                    manager->registerClientCallback(name, service,
                     .isOk()) {
                                                    sp<android::os::IClientCallback>::fromExisting(
            ALOGE("Failed to add client callback for service %s", name.c_str());
                                                            this));
            !status.isOk()) {
            ALOGE("Failed to add client callback for service %s (%s)", name.c_str(),
                  status.toString8().c_str());
            return false;
            return false;
        }
        }


@@ -171,10 +175,10 @@ bool ClientCounterCallbackImpl::tryUnregister() {
    auto manager = interface_cast<AidlServiceManager>(asBinder(defaultServiceManager()));
    auto manager = interface_cast<AidlServiceManager>(asBinder(defaultServiceManager()));


    for (auto& [name, entry] : mRegisteredServices) {
    for (auto& [name, entry] : mRegisteredServices) {
        bool success = manager->tryUnregisterService(name, entry.service).isOk();
        Status status = manager->tryUnregisterService(name, entry.service);


        if (!success) {
        if (!status.isOk()) {
            ALOGI("Failed to unregister service %s", name.c_str());
            ALOGI("Failed to unregister service %s (%s)", name.c_str(), status.toString8().c_str());
            return false;
            return false;
        }
        }
        entry.registered = false;
        entry.registered = false;