Throw illegal argument exception when slot index is invalid
Test: Manual
Bug: 144097779
Change-Id: I5c5c4eb313fd42317a2b0feed0946b8e4003ad62
diff --git a/telephony/java/android/telephony/TelephonyManager.java b/telephony/java/android/telephony/TelephonyManager.java
index 5a63eb0..05355db 100644
--- a/telephony/java/android/telephony/TelephonyManager.java
+++ b/telephony/java/android/telephony/TelephonyManager.java
@@ -2584,6 +2584,8 @@
*
* @return the lowercase 2 character ISO-3166 country code, or empty string if not available.
*
+ * @throws IllegalArgumentException when the slotIndex is invalid.
+ *
* {@hide}
*/
@SystemApi
@@ -2592,6 +2594,10 @@
@RequiresPermission(android.Manifest.permission.READ_PRIVILEGED_PHONE_STATE)
public String getNetworkCountryIso(int slotIndex) {
try {
+ if (!SubscriptionManager.isValidSlotIndex(slotIndex)) {
+ throw new IllegalArgumentException("invalid slot index " + slotIndex);
+ }
+
ITelephony telephony = getITelephony();
if (telephony == null) return "";
return telephony.getNetworkCountryIsoForPhone(slotIndex, getOpPackageName());