summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author Jean-Baptiste Queru <jbq@google.com> 2010-05-13 11:06:28 -0700
committer Android Code Review <code-review@android.com> 2010-05-13 11:06:28 -0700
commitecfb185eedecde3895b1340dfdb12b65bb72c32c (patch)
tree7d3a698a8b043a85def26af5a8063b13204b0cdc
parentf3ca9a5c7e87319c934b5815566054d2e5c2085f (diff)
parentce2a97aeb82d3f34a63472720ee9d53e53c248c2 (diff)
Merge "Preserve '+' in phone numbers imported from SIM."
-rw-r--r--telephony/java/android/telephony/PhoneNumberUtils.java3
-rw-r--r--tests/CoreTests/com/android/internal/telephony/PhoneNumberUtilsTest.java10
2 files changed, 12 insertions, 1 deletions
diff --git a/telephony/java/android/telephony/PhoneNumberUtils.java b/telephony/java/android/telephony/PhoneNumberUtils.java
index 1aa1c7667f0e..3f086765a8b8 100644
--- a/telephony/java/android/telephony/PhoneNumberUtils.java
+++ b/telephony/java/android/telephony/PhoneNumberUtils.java
@@ -689,7 +689,8 @@ public class PhoneNumberUtils
return "";
}
- if ((bytes[offset] & 0xff) == TOA_International) {
+ //Only TON field should be taken in concideration
+ if ((bytes[offset] & 0xf0) == (TOA_International & 0xf0)) {
prependPlus = true;
}
diff --git a/tests/CoreTests/com/android/internal/telephony/PhoneNumberUtilsTest.java b/tests/CoreTests/com/android/internal/telephony/PhoneNumberUtilsTest.java
index 20ea4d790dff..e14240f63584 100644
--- a/tests/CoreTests/com/android/internal/telephony/PhoneNumberUtilsTest.java
+++ b/tests/CoreTests/com/android/internal/telephony/PhoneNumberUtilsTest.java
@@ -82,6 +82,16 @@ public class PhoneNumberUtilsTest extends TestCase {
assertEquals("17005550020",
PhoneNumberUtils.calledPartyBCDToString(b, 0, 7));
+ b[0] = (byte) 0x80; b[1] = (byte) 0x71; b[2] = (byte) 0x00; b[3] = (byte) 0x55;
+ b[4] = (byte) 0x05; b[5] = (byte) 0x20; b[6] = (byte) 0xF0;
+ assertEquals("17005550020",
+ PhoneNumberUtils.calledPartyBCDToString(b, 0, 7));
+
+ b[0] = (byte) 0x90; b[1] = (byte) 0x71; b[2] = (byte) 0x00; b[3] = (byte) 0x55;
+ b[4] = (byte) 0x05; b[5] = (byte) 0x20; b[6] = (byte) 0xF0;
+ assertEquals("+17005550020",
+ PhoneNumberUtils.calledPartyBCDToString(b, 0, 7));
+
b[0] = (byte) 0x91; b[1] = (byte) 0x71; b[2] = (byte) 0x00; b[3] = (byte) 0x55;
b[4] = (byte) 0x05; b[5] = (byte) 0x20; b[6] = (byte) 0xF0;
assertEquals("+17005550020",