Browse Source

Handle "ghost" SIM slots gracefully

On devices like the Japanese versions of Sony Xperia 5 II, the telephony
HAL can end up reporting a "ghost" SIM slot that does not actually exist
and (thus) has no IMEI assigned to it. In this case, our code would
crash since we assumed every SIM slot reported to the telephony
framework should be valid. The fix is simple -- abort when we realize
that the SIM slot has no IMEI.
Peter Cai 3 years ago
parent
commit
a461ef9208
1 changed files with 1 additions and 1 deletions
  1. 1 1
      app/src/main/java/im/angry/openeuicc/core/EuiccChannelManager.kt

+ 1 - 1
app/src/main/java/im/angry/openeuicc/core/EuiccChannelManager.kt

@@ -66,7 +66,7 @@ class EuiccChannelManager(private val context: Context) {
                 uiccInfo.slotIndex,
                 uiccInfo.cardId,
                 "SIM ${uiccInfo.slotIndex}",
-                tm.getImei(uiccInfo.slotIndex),
+                tm.getImei(uiccInfo.slotIndex) ?: return null,
                 uiccInfo.isRemovable
             )