summaryrefslogtreecommitdiff
path: root/libs/binder/ActivityManager.cpp
diff options
context:
space:
mode:
author Chong Zhang <chz@google.com> 2020-11-17 14:44:20 -0800
committer Chong Zhang <chz@google.com> 2020-11-17 14:44:20 -0800
commit1576534b4699ed971a89ea79641dc592b15da4ae (patch)
treee69e37324ad88e08f9796ef6e39644444e093de0 /libs/binder/ActivityManager.cpp
parentac4a6fcc46d8e7069be2a291b6d737f16a2fbd37 (diff)
ActivityManager: return status for register/unregisterUidObserver
bug: 172942349 bug: 159172726 Change-Id: I1420d5a9e14aca4f70e8c6cbd26613dd85db51f1
Diffstat (limited to 'libs/binder/ActivityManager.cpp')
-rw-r--r--libs/binder/ActivityManager.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/libs/binder/ActivityManager.cpp b/libs/binder/ActivityManager.cpp
index 727ea6024b..e45a656d29 100644
--- a/libs/binder/ActivityManager.cpp
+++ b/libs/binder/ActivityManager.cpp
@@ -62,23 +62,27 @@ int ActivityManager::openContentUri(const String16& stringUri)
return service != nullptr ? service->openContentUri(stringUri) : -1;
}
-void ActivityManager::registerUidObserver(const sp<IUidObserver>& observer,
+status_t ActivityManager::registerUidObserver(const sp<IUidObserver>& observer,
const int32_t event,
const int32_t cutpoint,
const String16& callingPackage)
{
sp<IActivityManager> service = getService();
if (service != nullptr) {
- service->registerUidObserver(observer, event, cutpoint, callingPackage);
+ return service->registerUidObserver(observer, event, cutpoint, callingPackage);
}
+ // ActivityManagerService appears dead. Return usual error code for dead service.
+ return DEAD_OBJECT;
}
-void ActivityManager::unregisterUidObserver(const sp<IUidObserver>& observer)
+status_t ActivityManager::unregisterUidObserver(const sp<IUidObserver>& observer)
{
sp<IActivityManager> service = getService();
if (service != nullptr) {
- service->unregisterUidObserver(observer);
+ return service->unregisterUidObserver(observer);
}
+ // ActivityManagerService appears dead. Return usual error code for dead service.
+ return DEAD_OBJECT;
}
bool ActivityManager::isUidActive(const uid_t uid, const String16& callingPackage)