summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--src/com/android/phone/NetworkSelectListPreference.java12
1 files changed, 10 insertions, 2 deletions
diff --git a/src/com/android/phone/NetworkSelectListPreference.java b/src/com/android/phone/NetworkSelectListPreference.java
index ad67122b6..07db5e25e 100644
--- a/src/com/android/phone/NetworkSelectListPreference.java
+++ b/src/com/android/phone/NetworkSelectListPreference.java
@@ -424,16 +424,24 @@ public class NetworkSelectListPreference extends ListPreference
for (CellInfo cellInfo: mCellInfoList) {
// Display each operator name only once.
String networkTitle = getNetworkTitle(cellInfo);
+ String operator = getOperatorNumeric(cellInfo);
+ String uniqueOperator = operator;
+ int i = 1;
+ while (networkEntryValuesList.contains(uniqueOperator) ||
+ forbiddenEntryValuesList.contains(uniqueOperator)) {
+ uniqueOperator = operator + "_" + i;
+ i++;
+ }
if (!networkEntriesList.contains(networkTitle)) {
if (CellInfoUtil.isForbidden(cellInfo, mForbiddenPlmns)) {
networkTitle += " "
+ getContext().getResources().getString(R.string.forbidden_network);
forbiddenEntriesList.add(networkTitle);
- forbiddenEntryValuesList.add(getOperatorNumeric(cellInfo));
+ forbiddenEntryValuesList.add(uniqueOperator);
forbiddenCellInfos.add(cellInfo);
} else {
networkEntriesList.add(networkTitle);
- networkEntryValuesList.add(getOperatorNumeric(cellInfo));
+ networkEntryValuesList.add(uniqueOperator);
sortedCellInfos.add(cellInfo);
}
}