summaryrefslogtreecommitdiffstats
path: root/ril
diff options
context:
space:
mode:
authorPaul Keith <javelinanddart@gmail.com>2017-10-24 02:27:29 +0200
committerChristopher H. <raymanfx@gmail.com>2018-06-23 11:55:50 +0200
commit8cc0417cf2578fabf1380b18cfb2a77303506670 (patch)
tree20cf9ad52fb2c244f4aa3dba6e746b85aca38993 /ril
parent2ef158a26834e47ca8a38dfc09b65da28a29526a (diff)
downloadandroid_hardware_samsung-8cc0417cf2578fabf1380b18cfb2a77303506670.tar.gz
android_hardware_samsung-8cc0417cf2578fabf1380b18cfb2a77303506670.tar.bz2
android_hardware_samsung-8cc0417cf2578fabf1380b18cfb2a77303506670.zip
ril: service: Add workaround for "ring of death" bug
[javelinanddart]: Forward port to ril-caf on lineage-15.1 Change-Id: Ifeeee11ee83deddb8eff565847641c45a105378f
Diffstat (limited to 'ril')
-rw-r--r--ril/libril/ril_service.cpp12
1 files changed, 12 insertions, 0 deletions
diff --git a/ril/libril/ril_service.cpp b/ril/libril/ril_service.cpp
index d4b058c..016a215 100644
--- a/ril/libril/ril_service.cpp
+++ b/ril/libril/ril_service.cpp
@@ -7651,6 +7651,18 @@ int radio::cdmaInfoRecInd(int slotId,
record->signal[0].signalType = infoRec->rec.signal.signalType;
record->signal[0].alertPitch = infoRec->rec.signal.alertPitch;
record->signal[0].signal = infoRec->rec.signal.signal;
+
+ /* Drop the response to workaround the "ring of death" bug */
+ if (infoRec->rec.signal.isPresent
+ /* IS95_CONST_IR_SIGNAL_IS54B */
+ && infoRec->rec.signal.signalType == 2
+ /* IS95_CONST_IR_ALERT_MED */
+ && infoRec->rec.signal.alertPitch == 0
+ /* IS95_CONST_IR_SIG_IS54B_L */
+ && infoRec->rec.signal.signal == 1) {
+ return 0;
+ }
+
break;
}