diff options
author | Presubmit Automerger Backend <android-build-presubmit-automerger-backend@system.gserviceaccount.com> | 2023-05-15 23:14:40 +0000 |
---|---|---|
committer | Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com> | 2023-05-15 23:14:40 +0000 |
commit | 1db5211c4581a10afe776831e8a66d523400dc72 (patch) | |
tree | 957b70bb99d3eadb71e29cfa8df5b58c4650e285 | |
parent | ff1c734aebe79b8c0b575a9ca376ca1d78787a48 (diff) | |
parent | f4ef062dc2656c50ed4b49b75149fe0253182889 (diff) | |
download | Messaging-1db5211c4581a10afe776831e8a66d523400dc72.tar.gz |
[automerge] Trim recipient addresses that are unreasonably long. 2p: e37bb58fbb 2p: 22ba5f1d3d am: dd2620769f am: f4ef062dc2
Original change: https://googleplex-android-review.googlesource.com/c/platform/packages/apps/Messaging/+/23181897
Change-Id: If0801f5de8ba1a56a6de66a20f665514fea1c39f
Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
-rw-r--r-- | src/com/android/messaging/ui/conversation/LaunchConversationActivity.java | 20 |
1 files changed, 20 insertions, 0 deletions
diff --git a/src/com/android/messaging/ui/conversation/LaunchConversationActivity.java b/src/com/android/messaging/ui/conversation/LaunchConversationActivity.java index 5500ae8..c869839 100644 --- a/src/com/android/messaging/ui/conversation/LaunchConversationActivity.java +++ b/src/com/android/messaging/ui/conversation/LaunchConversationActivity.java @@ -37,6 +37,8 @@ import com.android.messaging.util.UriUtil; import java.io.UnsupportedEncodingException; import java.net.URLDecoder; +import java.util.ArrayList; +import java.util.List; /** * Launches ConversationActivity for sending a message to, or viewing messages from, a specific @@ -46,6 +48,7 @@ import java.net.URLDecoder; */ public class LaunchConversationActivity extends Activity implements LaunchConversationData.LaunchConversationDataListener { + private static final int MAX_RECIPIENT_LENGTH = 100; static final String SMS_BODY = "sms_body"; static final String ADDRESS = "address"; final Binding<LaunchConversationData> mBinding = BindingBase.createBinding(this); @@ -76,6 +79,9 @@ public class LaunchConversationActivity extends Activity implements recipients = new String[] { intent.getStringExtra(Intent.EXTRA_EMAIL) }; } } + if (recipients != null) { + recipients = trimInvalidRecipients(recipients); + } mSmsBody = intent.getStringExtra(SMS_BODY); if (TextUtils.isEmpty(mSmsBody)) { // Used by intents sent from the web YouTube (and perhaps others). @@ -103,6 +109,20 @@ public class LaunchConversationActivity extends Activity implements finish(); } + private String[] trimInvalidRecipients(String[] recipients) { + List<String> trimmedRecipients = new ArrayList<>(); + for (String recipient : recipients) { + if (recipient.length() < MAX_RECIPIENT_LENGTH) { + trimmedRecipients.add(recipient); + } + } + if (trimmedRecipients.size() > 0) { + return trimmedRecipients.toArray(new String[0]); + } else { + return null; + } + } + private String getBody(final Uri uri) { if (uri == null) { return null; |