diff options
-rw-r--r-- | src/MTS_IO_CellularRadio.cpp | 12 |
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; } |