Use correct format info for SMS

Use correct format to
 - Parse SMS delivery report.
 - Dump/Load SMS to/from the dump file.

TODO: Update message text state during composing.
Test: Manual

Change-Id: I7e53bed86130484a634c9305b276e2586db31796
Signed-off-by: Taesu Lee <taesu82.lee@samsung.com>
diff --git a/src/com/android/messaging/receiver/SmsReceiver.java b/src/com/android/messaging/receiver/SmsReceiver.java
index 859beff..b54359f 100644
--- a/src/com/android/messaging/receiver/SmsReceiver.java
+++ b/src/com/android/messaging/receiver/SmsReceiver.java
@@ -192,7 +192,7 @@
                 intent, EXTRA_SUB_ID);
         deliverSmsMessages(context, subId, errorCode, messages);
         if (MmsUtils.isDumpSmsEnabled()) {
-            final String format = null;
+            final String format = intent.getStringExtra("format");
             DebugUtils.dumpSms(messages[0].getTimestampMillis(), messages, format);
         }
     }
diff --git a/src/com/android/messaging/sms/MmsUtils.java b/src/com/android/messaging/sms/MmsUtils.java
index 9c4c2d5..74a9191 100644
--- a/src/com/android/messaging/sms/MmsUtils.java
+++ b/src/com/android/messaging/sms/MmsUtils.java
@@ -1194,7 +1194,8 @@
 
     public static SmsMessage getSmsMessageFromDeliveryReport(final Intent intent) {
         final byte[] pdu = intent.getByteArrayExtra("pdu");
-        return SmsMessage.createFromPdu(pdu);
+        final String format = intent.getStringExtra("format");
+        return SmsMessage.createFromPdu(pdu, format);
     }
 
     /**
diff --git a/src/com/android/messaging/util/DebugUtils.java b/src/com/android/messaging/util/DebugUtils.java
index 1362f83..0d689fe 100644
--- a/src/com/android/messaging/util/DebugUtils.java
+++ b/src/com/android/messaging/util/DebugUtils.java
@@ -291,9 +291,10 @@
                 dis = new DataInputStream(fis);
 
                 // SMS dump
+                String format = null;
                 final int chars = dis.readInt();
                 if (chars > 0) {
-                    final String format = dis.readUTF();
+                    format = dis.readUTF();
                 }
                 final int count = dis.readInt();
                 final SmsMessage[] messagesTemp = new SmsMessage[count];
@@ -301,7 +302,11 @@
                     final int length = dis.readInt();
                     final byte[] pdu = new byte[length];
                     dis.read(pdu, 0, length);
-                    messagesTemp[i] = SmsMessage.createFromPdu(pdu);
+                    if (format == null) {
+                        messagesTemp[i] = SmsMessage.createFromPdu(pdu);
+                    } else {
+                        messagesTemp[i] = SmsMessage.createFromPdu(pdu, format);
+                    }
                 }
                 messages = messagesTemp;
             } catch (final FileNotFoundException e) {