commit | 87cbe76c68b795a9bdbad6e92fdbad6aafe5092e | [log] [tgz] |
---|---|---|
author | Vladimir Komsiyski <vladokom@google.com> | Wed Jun 14 17:22:42 2023 +0000 |
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | Wed Jun 14 17:22:42 2023 +0000 |
tree | 4bf346d4f8b84542d11b4552d12fd0673ef152a3 | |
parent | ed6c97e573a9a0e372c3b1f7c4cfe8e83bb46d0d [diff] | |
parent | ede64fc2e6c6db4c4a791e5987655a1bead029a8 [diff] |
Merge "Handle runtime sensor events even if there are no real ones." into udc-dev am: 92745f7aeb am: ede64fc2e6 Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/native/+/23658936 Change-Id: I92d9e3f4d38b2ac105782e95b83f590f80c60f9d Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
diff --git a/services/sensorservice/SensorService.cpp b/services/sensorservice/SensorService.cpp index 398d602..90d7541 100644 --- a/services/sensorservice/SensorService.cpp +++ b/services/sensorservice/SensorService.cpp
@@ -1055,7 +1055,12 @@ if (count < 0) { if(count == DEAD_OBJECT && device.isReconnecting()) { device.reconnect(); - continue; + // There are no "real" events at this point, but do not skip the rest of the loop + // if there are pending runtime events. + Mutex::Autolock _l(&mLock); + if (mRuntimeSensorEventQueue.empty()) { + continue; + } } else { ALOGE("sensor poll failed (%s)", strerror(-count)); break;