summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
author Aravind Akella <aakella@google.com> 2015-07-29 01:01:55 +0000
committer Android Git Automerger <android-git-automerger@android.com> 2015-07-29 01:01:55 +0000
commitb04e02b9f70b7a26d1a8dc5927e4fca51168a759 (patch)
treeb4ff02c11c80cc853967f68567016895ea820c9c /libs
parent0a4a069a83e187b34b72169b2de91c78ac287858 (diff)
parent3a77d009273731eeeb6782f0eee6458c46f30208 (diff)
am 3a77d009: am 2376bd68: Merge "Bug fix in SensorManager." into mnc-dev
* commit '3a77d009273731eeeb6782f0eee6458c46f30208': Bug fix in SensorManager.
Diffstat (limited to 'libs')
-rw-r--r--libs/gui/SensorManager.cpp11
1 files changed, 8 insertions, 3 deletions
diff --git a/libs/gui/SensorManager.cpp b/libs/gui/SensorManager.cpp
index dd3778137a..ead535e637 100644
--- a/libs/gui/SensorManager.cpp
+++ b/libs/gui/SensorManager.cpp
@@ -59,12 +59,13 @@ void SensorManager::sensorManagerDied()
status_t SensorManager::assertStateLocked() const {
if (mSensorServer == NULL) {
- // try for one second
const String16 name("sensorservice");
- for (int i=0 ; i<4 ; i++) {
+ // try 10 times before giving up ...
+ for (int i = 0; i < 10; ++i) {
status_t err = getService(name, &mSensorServer);
if (err == NAME_NOT_FOUND) {
- usleep(250000);
+ // Sleep for 1 second before retrying.
+ sleep(1);
continue;
}
if (err != NO_ERROR) {
@@ -73,6 +74,10 @@ status_t SensorManager::assertStateLocked() const {
break;
}
+ if (mSensorServer == NULL) {
+ ALOGE("FATAL getsensorservice returned` NULL");
+ }
+
class DeathObserver : public IBinder::DeathRecipient {
SensorManager& mSensorManger;
virtual void binderDied(const wp<IBinder>& who) {