summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/MTS_IO_CellularRadio.cpp12
1 files changed, 11 insertions, 1 deletions
diff --git a/src/MTS_IO_CellularRadio.cpp b/src/MTS_IO_CellularRadio.cpp
index 191299b..50fdf5c 100644
--- a/src/MTS_IO_CellularRadio.cpp
+++ b/src/MTS_IO_CellularRadio.cpp
@@ -306,7 +306,7 @@ ICellularRadio::CODE CellularRadio::getSimStatusSummary(Json::Value& jData) {
}
if (!bIsSimInserted) {
- // There is no left much to do. Return one field only.
+ // There is not much left to do. Return one field only.
jData[KEY_IS_SIM_INSERTED] = bIsSimInserted;
break;
}
@@ -314,6 +314,16 @@ ICellularRadio::CODE CellularRadio::getSimStatusSummary(Json::Value& jData) {
// The following code assumes that the SIM card is inserted
retCode = getSimLockStatus(sSimLockStatus);
if (retCode != SUCCESS) {
+ /* IN:4033:
+ *
+ * On some devices #SIMDET reports "inserted" but +CPIN? returns ERROR when there is
+ * no SIM card in the slot. It's also the case when only plastic holder is inserted
+ * instead of the SIM itself.
+ *
+ * Interpret this error as "SIM card not detected" for such cases.
+ */
+ jData[KEY_IS_SIM_INSERTED] = false;
+ retCode = SUCCESS;
break;
}