From 001d0abd3e523dce5c8a4c14e22bd1ea79976f03 Mon Sep 17 00:00:00 2001 From: jsh Date: Fri, 18 Sep 2009 15:22:48 -0700 Subject: [PATCH] Fix potential ArrayIndexOutOfBoundsException. When parsing an SMS message as email, extractEmailAddressFromMessageBody() checks parts.length >= 1, but then proceeds to access parts[1] (which may not exist). Instead, check for parts.length >= 2, and treat parts.length = 1 as non-email. b/2122698 --- .../java/com/android/internal/telephony/SmsMessageBase.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/telephony/java/com/android/internal/telephony/SmsMessageBase.java b/telephony/java/com/android/internal/telephony/SmsMessageBase.java index 3f0213b8866df..3c2f2edc438b0 100644 --- a/telephony/java/com/android/internal/telephony/SmsMessageBase.java +++ b/telephony/java/com/android/internal/telephony/SmsMessageBase.java @@ -383,7 +383,7 @@ public abstract class SmsMessageBase { * 2. [x@y][ ]/[body] */ String[] parts = messageBody.split("( /)|( )", 2); - if (parts.length < 1) return; + if (parts.length < 2) return; emailFrom = parts[0]; emailBody = parts[1]; isEmail = true;