am 505ffe36: Merge "Check bounds on CharSequence drawText methods" into lmp-mr1-dev

automerge: 58fa003

* commit '58fa0035775bbb897115bae1b59719391a1a7edd':
  Check bounds on CharSequence drawText methods
This commit is contained in:
Raph Levien
2014-11-14 21:53:11 +00:00
committed by android-build-merger
2 changed files with 6 additions and 0 deletions

View File

@@ -885,6 +885,9 @@ class GLES20Canvas extends HardwareCanvas {
@Override
public void drawText(CharSequence text, int start, int end, float x, float y, Paint paint) {
if ((start | end | (end - start) | (text.length() - end)) < 0) {
throw new IndexOutOfBoundsException();
}
if (text instanceof String || text instanceof SpannedString ||
text instanceof SpannableString) {
nDrawText(mRenderer, text.toString(), start, end, x, y, paint.mBidiFlags,

View File

@@ -1710,6 +1710,9 @@ public class Canvas {
*/
public void drawText(@NonNull CharSequence text, int start, int end, float x, float y,
@NonNull Paint paint) {
if ((start | end | (end - start) | (text.length() - end)) < 0) {
throw new IndexOutOfBoundsException();
}
if (text instanceof String || text instanceof SpannedString ||
text instanceof SpannableString) {
native_drawText(mNativeCanvasWrapper, text.toString(), start, end, x, y,