Loading telephony/java/android/telephony/gsm/SmsMessage.java +6 −6 Original line number Diff line number Diff line Loading @@ -304,9 +304,9 @@ public class SmsMessage { int septets = GsmAlphabet.countGsmSeptets(messageBody, !use7bitOnly); ret[1] = septets; if (septets > MAX_USER_DATA_SEPTETS) { ret[0] = (septets / MAX_USER_DATA_SEPTETS_WITH_HEADER) + 1; ret[2] = MAX_USER_DATA_SEPTETS_WITH_HEADER - (septets % MAX_USER_DATA_SEPTETS_WITH_HEADER); ret[0] = (septets + (MAX_USER_DATA_SEPTETS_WITH_HEADER - 1)) / MAX_USER_DATA_SEPTETS_WITH_HEADER; ret[2] = (ret[0] * MAX_USER_DATA_SEPTETS_WITH_HEADER) - septets; } else { ret[0] = 1; ret[2] = MAX_USER_DATA_SEPTETS - septets; Loading @@ -318,9 +318,9 @@ public class SmsMessage { ret[1] = messageBody.length(); if (octets > MAX_USER_DATA_BYTES) { // 6 is the size of the user data header ret[0] = (octets / MAX_USER_DATA_BYTES_WITH_HEADER) + 1; ret[2] = (MAX_USER_DATA_BYTES_WITH_HEADER - (octets % MAX_USER_DATA_BYTES_WITH_HEADER))/2; ret[0] = (octets + (MAX_USER_DATA_BYTES_WITH_HEADER - 1)) / MAX_USER_DATA_BYTES_WITH_HEADER; ret[2] = ((ret[0] * MAX_USER_DATA_BYTES_WITH_HEADER) - octets) / 2; } else { ret[0] = 1; ret[2] = (MAX_USER_DATA_BYTES - octets)/2; Loading telephony/java/com/android/internal/telephony/GsmAlphabet.java +1 −1 Original line number Diff line number Diff line Loading @@ -23,7 +23,7 @@ import android.util.Log; /** * This class implements the character set mapping between * the GSM SMS 7-bit alphabet specifed in TS 23.038 6.2.1 * the GSM SMS 7-bit alphabet specified in TS 23.038 6.2.1 * and UTF-16 * * {@hide} Loading telephony/java/com/android/internal/telephony/cdma/SmsMessage.java +3 −3 Original line number Diff line number Diff line Loading @@ -287,7 +287,7 @@ public class SmsMessage extends SmsMessageBase { * @param destAddr Address of the recipient. * @param message String representation of the message payload. * @param statusReportRequested Indicates whether a report is requested for this message. * @param headerData Array containing the data for the User Data Header, preceded * @param smsHeader Array containing the data for the User Data Header, preceded * by the Element Identifiers. * @return a <code>SubmitPdu</code> containing the encoded SC * address, if applicable, and the encoded message. Loading Loading @@ -355,7 +355,7 @@ public class SmsMessage extends SmsMessageBase { * Get an SMS-SUBMIT PDU for a data message to a destination address & port * * @param destAddr the address of the destination for the message * @param userDara the data for the message * @param userData the data for the message * @param statusReportRequested Indicates whether a report is requested for this message. * @return a <code>SubmitPdu</code> containing the encoded SC * address, if applicable, and the encoded message. Loading Loading @@ -446,7 +446,7 @@ public class SmsMessage extends SmsMessageBase { */ public static TextEncodingDetails calculateLength(CharSequence messageBody, boolean use7bitOnly) { return BearerData.calcTextEncodingDetails(messageBody.toString(), use7bitOnly); return BearerData.calcTextEncodingDetails(messageBody, use7bitOnly); } /** Loading telephony/java/com/android/internal/telephony/cdma/sms/BearerData.java +8 −7 Original line number Diff line number Diff line Loading @@ -405,7 +405,8 @@ public final class BearerData { /** * Calculate the message text encoding length, fragmentation, and other details. * * @param force ignore (but still count) illegal characters if true * @param msg message text * @param force7BitEncoding ignore (but still count) illegal characters if true * @return septet count, or -1 on failure */ public static TextEncodingDetails calcTextEncodingDetails(CharSequence msg, Loading @@ -427,9 +428,10 @@ public final class BearerData { ted.codeUnitCount = msg.length(); int octets = ted.codeUnitCount * 2; if (octets > MAX_USER_DATA_BYTES) { ted.msgCount = (octets / MAX_USER_DATA_BYTES_WITH_HEADER) + 1; ted.codeUnitsRemaining = (MAX_USER_DATA_BYTES_WITH_HEADER - (octets % MAX_USER_DATA_BYTES_WITH_HEADER))/2; ted.msgCount = (octets + (MAX_USER_DATA_BYTES_WITH_HEADER - 1)) / MAX_USER_DATA_BYTES_WITH_HEADER; ted.codeUnitsRemaining = ((ted.msgCount * MAX_USER_DATA_BYTES_WITH_HEADER) - octets) / 2; } else { ted.msgCount = 1; ted.codeUnitsRemaining = (MAX_USER_DATA_BYTES - octets)/2; Loading Loading @@ -802,9 +804,8 @@ public final class BearerData { * Create serialized representation for BearerData object. * (See 3GPP2 C.R1001-F, v1.0, section 4.5 for layout details) * * @param bearerData an instance of BearerData. * * @return data byta array of raw encoded SMS bearer data. * @param bData an instance of BearerData. * @return byte array of raw encoded SMS bearer data. */ public static byte[] encode(BearerData bData) { bData.hasUserDataHeader = ((bData.userData != null) && Loading telephony/java/com/android/internal/telephony/gsm/SmsMessage.java +8 −6 Original line number Diff line number Diff line Loading @@ -800,9 +800,10 @@ public class SmsMessage extends SmsMessageBase{ int septets = GsmAlphabet.countGsmSeptets(msgBody, !use7bitOnly); ted.codeUnitCount = septets; if (septets > MAX_USER_DATA_SEPTETS) { ted.msgCount = (septets / MAX_USER_DATA_SEPTETS_WITH_HEADER) + 1; ted.codeUnitsRemaining = MAX_USER_DATA_SEPTETS_WITH_HEADER - (septets % MAX_USER_DATA_SEPTETS_WITH_HEADER); ted.msgCount = (septets + (MAX_USER_DATA_SEPTETS_WITH_HEADER - 1)) / MAX_USER_DATA_SEPTETS_WITH_HEADER; ted.codeUnitsRemaining = (ted.msgCount * MAX_USER_DATA_SEPTETS_WITH_HEADER) - septets; } else { ted.msgCount = 1; ted.codeUnitsRemaining = MAX_USER_DATA_SEPTETS - septets; Loading @@ -812,9 +813,10 @@ public class SmsMessage extends SmsMessageBase{ int octets = msgBody.length() * 2; ted.codeUnitCount = msgBody.length(); if (octets > MAX_USER_DATA_BYTES) { ted.msgCount = (octets / MAX_USER_DATA_BYTES_WITH_HEADER) + 1; ted.codeUnitsRemaining = (MAX_USER_DATA_BYTES_WITH_HEADER - (octets % MAX_USER_DATA_BYTES_WITH_HEADER))/2; ted.msgCount = (octets + (MAX_USER_DATA_BYTES_WITH_HEADER - 1)) / MAX_USER_DATA_BYTES_WITH_HEADER; ted.codeUnitsRemaining = ((ted.msgCount * MAX_USER_DATA_BYTES_WITH_HEADER) - octets) / 2; } else { ted.msgCount = 1; ted.codeUnitsRemaining = (MAX_USER_DATA_BYTES - octets)/2; Loading Loading
telephony/java/android/telephony/gsm/SmsMessage.java +6 −6 Original line number Diff line number Diff line Loading @@ -304,9 +304,9 @@ public class SmsMessage { int septets = GsmAlphabet.countGsmSeptets(messageBody, !use7bitOnly); ret[1] = septets; if (septets > MAX_USER_DATA_SEPTETS) { ret[0] = (septets / MAX_USER_DATA_SEPTETS_WITH_HEADER) + 1; ret[2] = MAX_USER_DATA_SEPTETS_WITH_HEADER - (septets % MAX_USER_DATA_SEPTETS_WITH_HEADER); ret[0] = (septets + (MAX_USER_DATA_SEPTETS_WITH_HEADER - 1)) / MAX_USER_DATA_SEPTETS_WITH_HEADER; ret[2] = (ret[0] * MAX_USER_DATA_SEPTETS_WITH_HEADER) - septets; } else { ret[0] = 1; ret[2] = MAX_USER_DATA_SEPTETS - septets; Loading @@ -318,9 +318,9 @@ public class SmsMessage { ret[1] = messageBody.length(); if (octets > MAX_USER_DATA_BYTES) { // 6 is the size of the user data header ret[0] = (octets / MAX_USER_DATA_BYTES_WITH_HEADER) + 1; ret[2] = (MAX_USER_DATA_BYTES_WITH_HEADER - (octets % MAX_USER_DATA_BYTES_WITH_HEADER))/2; ret[0] = (octets + (MAX_USER_DATA_BYTES_WITH_HEADER - 1)) / MAX_USER_DATA_BYTES_WITH_HEADER; ret[2] = ((ret[0] * MAX_USER_DATA_BYTES_WITH_HEADER) - octets) / 2; } else { ret[0] = 1; ret[2] = (MAX_USER_DATA_BYTES - octets)/2; Loading
telephony/java/com/android/internal/telephony/GsmAlphabet.java +1 −1 Original line number Diff line number Diff line Loading @@ -23,7 +23,7 @@ import android.util.Log; /** * This class implements the character set mapping between * the GSM SMS 7-bit alphabet specifed in TS 23.038 6.2.1 * the GSM SMS 7-bit alphabet specified in TS 23.038 6.2.1 * and UTF-16 * * {@hide} Loading
telephony/java/com/android/internal/telephony/cdma/SmsMessage.java +3 −3 Original line number Diff line number Diff line Loading @@ -287,7 +287,7 @@ public class SmsMessage extends SmsMessageBase { * @param destAddr Address of the recipient. * @param message String representation of the message payload. * @param statusReportRequested Indicates whether a report is requested for this message. * @param headerData Array containing the data for the User Data Header, preceded * @param smsHeader Array containing the data for the User Data Header, preceded * by the Element Identifiers. * @return a <code>SubmitPdu</code> containing the encoded SC * address, if applicable, and the encoded message. Loading Loading @@ -355,7 +355,7 @@ public class SmsMessage extends SmsMessageBase { * Get an SMS-SUBMIT PDU for a data message to a destination address & port * * @param destAddr the address of the destination for the message * @param userDara the data for the message * @param userData the data for the message * @param statusReportRequested Indicates whether a report is requested for this message. * @return a <code>SubmitPdu</code> containing the encoded SC * address, if applicable, and the encoded message. Loading Loading @@ -446,7 +446,7 @@ public class SmsMessage extends SmsMessageBase { */ public static TextEncodingDetails calculateLength(CharSequence messageBody, boolean use7bitOnly) { return BearerData.calcTextEncodingDetails(messageBody.toString(), use7bitOnly); return BearerData.calcTextEncodingDetails(messageBody, use7bitOnly); } /** Loading
telephony/java/com/android/internal/telephony/cdma/sms/BearerData.java +8 −7 Original line number Diff line number Diff line Loading @@ -405,7 +405,8 @@ public final class BearerData { /** * Calculate the message text encoding length, fragmentation, and other details. * * @param force ignore (but still count) illegal characters if true * @param msg message text * @param force7BitEncoding ignore (but still count) illegal characters if true * @return septet count, or -1 on failure */ public static TextEncodingDetails calcTextEncodingDetails(CharSequence msg, Loading @@ -427,9 +428,10 @@ public final class BearerData { ted.codeUnitCount = msg.length(); int octets = ted.codeUnitCount * 2; if (octets > MAX_USER_DATA_BYTES) { ted.msgCount = (octets / MAX_USER_DATA_BYTES_WITH_HEADER) + 1; ted.codeUnitsRemaining = (MAX_USER_DATA_BYTES_WITH_HEADER - (octets % MAX_USER_DATA_BYTES_WITH_HEADER))/2; ted.msgCount = (octets + (MAX_USER_DATA_BYTES_WITH_HEADER - 1)) / MAX_USER_DATA_BYTES_WITH_HEADER; ted.codeUnitsRemaining = ((ted.msgCount * MAX_USER_DATA_BYTES_WITH_HEADER) - octets) / 2; } else { ted.msgCount = 1; ted.codeUnitsRemaining = (MAX_USER_DATA_BYTES - octets)/2; Loading Loading @@ -802,9 +804,8 @@ public final class BearerData { * Create serialized representation for BearerData object. * (See 3GPP2 C.R1001-F, v1.0, section 4.5 for layout details) * * @param bearerData an instance of BearerData. * * @return data byta array of raw encoded SMS bearer data. * @param bData an instance of BearerData. * @return byte array of raw encoded SMS bearer data. */ public static byte[] encode(BearerData bData) { bData.hasUserDataHeader = ((bData.userData != null) && Loading
telephony/java/com/android/internal/telephony/gsm/SmsMessage.java +8 −6 Original line number Diff line number Diff line Loading @@ -800,9 +800,10 @@ public class SmsMessage extends SmsMessageBase{ int septets = GsmAlphabet.countGsmSeptets(msgBody, !use7bitOnly); ted.codeUnitCount = septets; if (septets > MAX_USER_DATA_SEPTETS) { ted.msgCount = (septets / MAX_USER_DATA_SEPTETS_WITH_HEADER) + 1; ted.codeUnitsRemaining = MAX_USER_DATA_SEPTETS_WITH_HEADER - (septets % MAX_USER_DATA_SEPTETS_WITH_HEADER); ted.msgCount = (septets + (MAX_USER_DATA_SEPTETS_WITH_HEADER - 1)) / MAX_USER_DATA_SEPTETS_WITH_HEADER; ted.codeUnitsRemaining = (ted.msgCount * MAX_USER_DATA_SEPTETS_WITH_HEADER) - septets; } else { ted.msgCount = 1; ted.codeUnitsRemaining = MAX_USER_DATA_SEPTETS - septets; Loading @@ -812,9 +813,10 @@ public class SmsMessage extends SmsMessageBase{ int octets = msgBody.length() * 2; ted.codeUnitCount = msgBody.length(); if (octets > MAX_USER_DATA_BYTES) { ted.msgCount = (octets / MAX_USER_DATA_BYTES_WITH_HEADER) + 1; ted.codeUnitsRemaining = (MAX_USER_DATA_BYTES_WITH_HEADER - (octets % MAX_USER_DATA_BYTES_WITH_HEADER))/2; ted.msgCount = (octets + (MAX_USER_DATA_BYTES_WITH_HEADER - 1)) / MAX_USER_DATA_BYTES_WITH_HEADER; ted.codeUnitsRemaining = ((ted.msgCount * MAX_USER_DATA_BYTES_WITH_HEADER) - octets) / 2; } else { ted.msgCount = 1; ted.codeUnitsRemaining = (MAX_USER_DATA_BYTES - octets)/2; Loading