diff options
author | Taesu Lee <taesu82.lee@samsung.com> | 2021-01-12 22:08:19 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2021-01-12 22:08:19 +0000 |
commit | 68007370418dab0687756f84a9f02bcf2db91741 (patch) | |
tree | 1edc43b70fac809f679aec98467d309e34f5c02e | |
parent | 2092fb2dcc9b1bc2e5e99c9518e4e1df2f9f5a61 (diff) | |
parent | cf7a8b123ab0aaea05c630cfc0b8e5ae41e08b13 (diff) | |
download | Messaging-68007370418dab0687756f84a9f02bcf2db91741.tar.gz |
Fix wrong sync message issue for pending outgoing messages am: bccecb6393 am: 6af3221619 am: cf7a8b123a
Original change: https://android-review.googlesource.com/c/platform/packages/apps/Messaging/+/1547734
MUST ONLY BE SUBMITTED BY AUTOMERGER
Change-Id: Ifae7ac0acbe08f351b9c057a5912c3fe175ae02e
-rw-r--r-- | src/com/android/messaging/datamodel/action/ResendMessageAction.java | 2 | ||||
-rw-r--r-- | src/com/android/messaging/datamodel/action/SendMessageAction.java | 17 |
2 files changed, 13 insertions, 6 deletions
diff --git a/src/com/android/messaging/datamodel/action/ResendMessageAction.java b/src/com/android/messaging/datamodel/action/ResendMessageAction.java index 0943f72..b442ae6 100644 --- a/src/com/android/messaging/datamodel/action/ResendMessageAction.java +++ b/src/com/android/messaging/datamodel/action/ResendMessageAction.java @@ -80,8 +80,6 @@ public class ResendMessageAction extends Action implements Parcelable { final ContentValues values = new ContentValues(); values.put(MessageColumns.STATUS, MessageData.BUGLE_STATUS_OUTGOING_YET_TO_SEND); - values.put(MessageColumns.RECEIVED_TIMESTAMP, timestamp); - values.put(MessageColumns.SENT_TIMESTAMP, timestamp); values.put(MessageColumns.RETRY_START_TIMESTAMP, timestamp); // Row must exist as was just loaded above (on ActionService thread) diff --git a/src/com/android/messaging/datamodel/action/SendMessageAction.java b/src/com/android/messaging/datamodel/action/SendMessageAction.java index 35e6280..44c661d 100644 --- a/src/com/android/messaging/datamodel/action/SendMessageAction.java +++ b/src/com/android/messaging/datamodel/action/SendMessageAction.java @@ -95,13 +95,17 @@ public class SendMessageAction extends Action implements Parcelable { private boolean queueAction(final String messageId, final Action processingAction) { actionParameters.putString(KEY_MESSAGE_ID, messageId); - final long timestamp = System.currentTimeMillis(); final DatabaseWrapper db = DataModel.get().getDatabase(); final MessageData message = BugleDatabaseOperations.readMessage(db, messageId); // Check message can be resent if (message != null && message.canSendMessage()) { - final boolean isSms = (message.getProtocol() == MessageData.PROTOCOL_SMS); + final boolean isSms = message.getIsSms(); + long timestamp = System.currentTimeMillis(); + if (!isSms) { + // MMS expects timestamp rounded to nearest second + timestamp = 1000 * ((timestamp + 500) / 1000); + } final ParticipantData self = BugleDatabaseOperations.getExistingParticipant( db, message.getSelfId()); @@ -110,8 +114,13 @@ public class SendMessageAction extends Action implements Parcelable { // Update message status if (message.getYetToSend()) { - // Initial sending of message - message.markMessageSending(timestamp); + if (message.getReceivedTimeStamp() == message.getRetryStartTimestamp()) { + // Initial sending of message + message.markMessageSending(timestamp); + } else { + // Manual resend of message + message.markMessageManualResend(timestamp); + } } else { // Automatic resend of message message.markMessageResending(timestamp); |