From 43c3204067ba65b498713cf3f4c5fce9e024d897 Mon Sep 17 00:00:00 2001 From: Kazuhiro Ondo Date: Fri, 26 Aug 2011 17:13:03 -0500 Subject: Fix leak in SIM ready registrants SIM Ready registrants was keep growing after air plane mode toggle or RIL recovery. Bug: 5222722 Change-Id: Iac9fcb86f96f9e42440e641cd94736fed6f45813 --- .../android/internal/telephony/cdma/CdmaLteServiceStateTracker.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'telephony/java/com') diff --git a/telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java b/telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java index 134227a..e92a276 100644 --- a/telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java +++ b/telephony/java/com/android/internal/telephony/cdma/CdmaLteServiceStateTracker.java @@ -39,6 +39,7 @@ public class CdmaLteServiceStateTracker extends CdmaServiceStateTracker { CDMALTEPhone mCdmaLtePhone; private ServiceState mLteSS; // The last LTE state from Voice Registration + private boolean mNeedToRegForSimLoaded = true; public CdmaLteServiceStateTracker(CDMALTEPhone phone) { super(phone); @@ -71,7 +72,10 @@ public class CdmaLteServiceStateTracker extends CdmaServiceStateTracker { isSubscriptionFromRuim = false; // Register SIM_RECORDS_LOADED dynamically. // This is to avoid confilct with RUIM_READY scenario) - phone.mIccRecords.registerForRecordsLoaded(this, EVENT_SIM_RECORDS_LOADED, null); + if (mNeedToRegForSimLoaded) { + phone.mIccRecords.registerForRecordsLoaded(this, EVENT_SIM_RECORDS_LOADED, null); + mNeedToRegForSimLoaded = false; + } pollState(); // Signal strength polling stops when radio is off. queueNextSignalStrengthPoll(); -- cgit v1.1