summaryrefslogtreecommitdiff
path: root/gnss
diff options
context:
space:
mode:
authorqctecmdr Service <qctecmdr@qualcomm.com>2019-01-04 21:25:14 -0800
committerGerrit - the friendly Code Review server <code-review@localhost>2019-01-04 21:25:14 -0800
commitf575c9c0d13688c9ccac60affe9337eec8daa0b9 (patch)
tree16e59627c2e642ff987a7e25727b63c7905b27ee /gnss
parent3203504a28c72cf9823f1864b46b8692cf7979ec (diff)
parentf7c6bf552ae3818f98c19dd327b55de531924d47 (diff)
downloadgps-f575c9c0d13688c9ccac60affe9337eec8daa0b9.tar.gz
Merge "fix multiple GPS_LOCK request"
Diffstat (limited to 'gnss')
-rw-r--r--gnss/GnssAdapter.cpp9
1 files changed, 5 insertions, 4 deletions
diff --git a/gnss/GnssAdapter.cpp b/gnss/GnssAdapter.cpp
index 016356b..8112a71 100644
--- a/gnss/GnssAdapter.cpp
+++ b/gnss/GnssAdapter.cpp
@@ -846,13 +846,14 @@ GnssAdapter::gnssUpdateConfigCommand(GnssConfig config)
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_GPS_LOCK_VALID_BIT) {
uint32_t newGpsLock = mAdapter.convertGpsLock(gnssConfigRequested.gpsLock);
- ContextBase::mGps_conf.GPS_LOCK = newGpsLock;
- if (0 == ContextBase::mGps_conf.GPS_LOCK) {
- ContextBase::mGps_conf.GPS_LOCK = 3;
+ if (0 == newGpsLock) {
+ newGpsLock = 3;
}
- if (0 != mAdapter.getPowerVoteId()) {
+ if (newGpsLock == ContextBase::mGps_conf.GPS_LOCK ||
+ 0 != mAdapter.getPowerVoteId()) {
gnssConfigNeedEngineUpdate.flags &= ~(GNSS_CONFIG_FLAGS_GPS_LOCK_VALID_BIT);
}
+ ContextBase::mGps_conf.GPS_LOCK = newGpsLock;
index++;
}
if (gnssConfigRequested.flags & GNSS_CONFIG_FLAGS_SUPL_VERSION_VALID_BIT) {