Fix deadlock in cuttlefish/default implementation
Bug: 150830099
Test: atest LocationManagerFineTest#testRegisterGnssMeasurementsCallback
-c --iterations 100
Change-Id: I70aec19a481781d924ed3008765ca624a7eeb950
diff --git a/gnss/2.1/default/GnssAntennaInfo.h b/gnss/2.1/default/GnssAntennaInfo.h
index f4bfd24..c512e4e 100644
--- a/gnss/2.1/default/GnssAntennaInfo.h
+++ b/gnss/2.1/default/GnssAntennaInfo.h
@@ -47,10 +47,12 @@
void reportAntennaInfo(
const hidl_vec<IGnssAntennaInfoCallback::GnssAntennaInfo>& antennaInfo) const;
+ // Guarded by mMutex
static sp<IGnssAntennaInfoCallback> sCallback;
std::atomic<long> mMinIntervalMillis;
std::atomic<bool> mIsActive;
std::thread mThread;
+ // Synchronization lock for sCallback
mutable std::mutex mMutex;
};