diff options
author | Yu-Han Yang <yuhany@google.com> | 2022-04-13 12:40:52 -0700 |
---|---|---|
committer | Yu-Han Yang <yuhany@google.com> | 2022-04-13 17:06:26 -0700 |
commit | b6686e725a5a06757d66898562f20d5ea04ea9b3 (patch) | |
tree | 3c96b0480a7caf62377a01698e039f2d5cd538e4 /gnss/aidl/default/GnssNavigationMessageInterface.cpp | |
parent | 3c25334fccbfea52781152d0a6bc0a0335d66a37 (diff) |
Fix use-after-free in GnssMesaurementInterface
Bug: 228639296
Test: on Cuttlefish
Change-Id: Ibd36d23f2059ae994132099dd67d8fd10f84cd72
Diffstat (limited to 'gnss/aidl/default/GnssNavigationMessageInterface.cpp')
-rw-r--r-- | gnss/aidl/default/GnssNavigationMessageInterface.cpp | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/gnss/aidl/default/GnssNavigationMessageInterface.cpp b/gnss/aidl/default/GnssNavigationMessageInterface.cpp index 4bc859d35f..fe34787c82 100644 --- a/gnss/aidl/default/GnssNavigationMessageInterface.cpp +++ b/gnss/aidl/default/GnssNavigationMessageInterface.cpp @@ -69,12 +69,14 @@ void GnssNavigationMessageInterface::start() { std::this_thread::sleep_for(std::chrono::milliseconds(mMinIntervalMillis)); } }); - mThread.detach(); } void GnssNavigationMessageInterface::stop() { ALOGD("stop"); mIsActive = false; + if (mThread.joinable()) { + mThread.join(); + } } void GnssNavigationMessageInterface::reportMessage(const GnssNavigationMessage& message) { |