summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndroid (Google) Code Review <android-gerrit@google.com>2009-05-29 17:13:34 -0700
committerAndroid (Google) Code Review <android-gerrit@google.com>2009-05-29 17:13:34 -0700
commit6190fe6e7d7c8a917472637f5ab2fb21fc8a6eea (patch)
treeb26e42de335ee89851bce30d9b767c3c491604d9
parentafbc9ab3707cc8b1954333f258f220800b3cc104 (diff)
parentef354fdd634de93004fddd7966d70f70a1351ca8 (diff)
downloadframeworks_base-6190fe6e7d7c8a917472637f5ab2fb21fc8a6eea.zip
frameworks_base-6190fe6e7d7c8a917472637f5ab2fb21fc8a6eea.tar.gz
frameworks_base-6190fe6e7d7c8a917472637f5ab2fb21fc8a6eea.tar.bz2
Merge change 2758 into donut
* changes: Fix concat SMS for GSM.
-rw-r--r--telephony/java/com/android/internal/telephony/gsm/GsmSMSDispatcher.java8
-rw-r--r--tests/CoreTests/com/android/internal/telephony/GsmAlphabetTest.java2
2 files changed, 8 insertions, 2 deletions
diff --git a/telephony/java/com/android/internal/telephony/gsm/GsmSMSDispatcher.java b/telephony/java/com/android/internal/telephony/gsm/GsmSMSDispatcher.java
index 347b3af..8bf5d19 100644
--- a/telephony/java/com/android/internal/telephony/gsm/GsmSMSDispatcher.java
+++ b/telephony/java/com/android/internal/telephony/gsm/GsmSMSDispatcher.java
@@ -152,7 +152,13 @@ final class GsmSMSDispatcher extends SMSDispatcher {
concatRef.refNumber = refNumber;
concatRef.seqNumber = i + 1; // 1-based sequence
concatRef.msgCount = msgCount;
- concatRef.isEightBits = false;
+ // TODO: We currently set this to true since our messaging app will never
+ // send more than 255 parts (it converts the message to MMS well before that).
+ // However, we should support 3rd party messaging apps that might need 16-bit
+ // references
+ // Note: It's not sufficient to just flip this bit to true; it will have
+ // ripple effects (several calculations assume 8-bit ref).
+ concatRef.isEightBits = true;
SmsHeader smsHeader = new SmsHeader();
smsHeader.concatRef = concatRef;
diff --git a/tests/CoreTests/com/android/internal/telephony/GsmAlphabetTest.java b/tests/CoreTests/com/android/internal/telephony/GsmAlphabetTest.java
index e2336f8..3a9c511 100644
--- a/tests/CoreTests/com/android/internal/telephony/GsmAlphabetTest.java
+++ b/tests/CoreTests/com/android/internal/telephony/GsmAlphabetTest.java
@@ -41,7 +41,7 @@ public class GsmAlphabetTest extends TestCase {
SmsHeader.toByteArray(header));
int septetCount = GsmAlphabet.countGsmSeptets(message, false);
String parsedMessage = GsmAlphabet.gsm7BitPackedToString(
- userData, SmsHeader.toByteArray(header).length+1, septetCount, 1);
+ userData, SmsHeader.toByteArray(header).length+2, septetCount, 1);
assertEquals(message, parsedMessage);
}