Check for ArrayIndexOutOfBoundsException

Quoted text pos may be out of bounds of message body.
This may be caused by the pos being calculated in html while the message is being
sent as plain text. A seperate CL will attempt to address the root cause. This
is a last resort so we don't crash.

Bug: 11538910
Change-Id: I326ebe56ee15368983caa2fa76605e7658dab014
diff --git a/emailcommon/src/com/android/emailcommon/internet/Rfc822Output.java b/emailcommon/src/com/android/emailcommon/internet/Rfc822Output.java
index 17dff5c..ce02d10 100644
--- a/emailcommon/src/com/android/emailcommon/internet/Rfc822Output.java
+++ b/emailcommon/src/com/android/emailcommon/internet/Rfc822Output.java
@@ -94,11 +94,16 @@
             return new String[2];
         }
         String[] messageBody = new String[] { body.mTextContent, body.mHtmlContent };
-        if (useSmartReply && body.mQuotedTextStartPos > 0) {
+        final int pos = body.mQuotedTextStartPos;
+        if (useSmartReply && pos > 0) {
             if (messageBody[0] != null) {
-                messageBody[0] = messageBody[0].substring(0, body.mQuotedTextStartPos);
+                if (pos < messageBody[0].length()) {
+                    messageBody[0] = messageBody[0].substring(0, pos);
+                }
             } else if (messageBody[1] != null) {
-                messageBody[1] = messageBody[1].substring(0, body.mQuotedTextStartPos);
+                if (pos < messageBody[1].length()) {
+                    messageBody[1] = messageBody[1].substring(0, pos);
+                }
             }
         }
         return messageBody;