Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 78a7b5d4 authored by Treehugger Robot's avatar Treehugger Robot Committed by Gerrit Code Review
Browse files

Merge "Add empty CdmaSmsSubaddress to CDMA PDU parsing"

parents af3dc4fc 22018a8c
Loading
Loading
Loading
Loading
+9 −2
Original line number Diff line number Diff line
@@ -470,6 +470,9 @@ public class SmsMessage extends SmsMessageBase {
        int bearerDataLength;
        SmsEnvelope env = new SmsEnvelope();
        CdmaSmsAddress addr = new CdmaSmsAddress();
        // We currently do not parse subaddress in PDU, but it is required when determining
        // fingerprint (see getIncomingSmsFingerprint()).
        CdmaSmsSubaddress subaddr = new CdmaSmsSubaddress();

        try {
            env.messageType = dis.readInt();
@@ -520,6 +523,7 @@ public class SmsMessage extends SmsMessageBase {
        // link the filled objects to this SMS
        mOriginatingAddress = addr;
        env.origAddress = addr;
        env.origSubaddress = subaddr;
        mEnvelope = env;
        mPdu = pdu;

@@ -1009,8 +1013,11 @@ public class SmsMessage extends SmsMessageBase {
        output.write(mEnvelope.teleService);
        output.write(mEnvelope.origAddress.origBytes, 0, mEnvelope.origAddress.origBytes.length);
        output.write(mEnvelope.bearerData, 0, mEnvelope.bearerData.length);
        // subaddress is not set when parsing some MT SMS.
        if (mEnvelope.origSubaddress != null && mEnvelope.origSubaddress.origBytes != null) {
            output.write(mEnvelope.origSubaddress.origBytes, 0,
                    mEnvelope.origSubaddress.origBytes.length);
        }

        return output.toByteArray();
    }