Promotion of fm.lnx.1.0-00007.
CRs Change ID Subject
--------------------------------------------------------------------------------------------------------------
958512 I78521f425d7419f3a3d577cc573560d3601b1b1e Reset notch filter only if it is set.
Change-Id: Ifb4eb821183fd6c8adc0dbe1c7729f5642558dbb
CRs-Fixed: 958512
diff --git a/fmapp2/src/com/caf/fmradio/FMRadioService.java b/fmapp2/src/com/caf/fmradio/FMRadioService.java
index 65e42bb..b610187 100644
--- a/fmapp2/src/com/caf/fmradio/FMRadioService.java
+++ b/fmapp2/src/com/caf/fmradio/FMRadioService.java
@@ -216,6 +216,8 @@
private static final int FM_OFF_FROM_APPLICATION = 1;
private static final int FM_OFF_FROM_ANTENNA = 2;
+ private static Object mNotchFilterLock = new Object();
+
public FMRadioService() {
}
@@ -1434,14 +1436,13 @@
}
} else {
if (mReceiver != null) {
- if( true == mNotchFilterSet )
- {
- mDelayedStopHandler.removeMessages(RESET_NOTCH_FILTER);
- }
- else
- {
- mReceiver.setNotchFilter(true);
- mNotchFilterSet = true;
+ synchronized (mNotchFilterLock) {
+ if (true == mNotchFilterSet) {
+ mDelayedStopHandler.removeMessages(RESET_NOTCH_FILTER);
+ } else {
+ mReceiver.setNotchFilter(true);
+ mNotchFilterSet = true;
+ }
}
}
}
@@ -1471,9 +1472,13 @@
stopSelf(mServiceStartId);
break;
case RESET_NOTCH_FILTER:
- if (mReceiver != null) {
- mReceiver.setNotchFilter(false);
- mNotchFilterSet = false;
+ synchronized (mNotchFilterLock) {
+ if (false == mNotchFilterSet)
+ break;
+ if (mReceiver != null) {
+ mReceiver.setNotchFilter(false);
+ mNotchFilterSet = false;
+ }
}
break;
case STOPSERVICE_ONSLEEP: