diff options
| author | Eric Fischer <enf@google.com> | 2009-12-14 17:33:11 -0800 |
|---|---|---|
| committer | Eric Fischer <enf@google.com> | 2009-12-14 17:35:36 -0800 |
| commit | 32929413ffb54b9338a889e764e5cc0608cb2be6 (patch) | |
| tree | 269f436f996feec37690bfc518d0d03af55eabb3 /core/java/android | |
| parent | da4cc34308d65730c404b669926a92e37b378555 (diff) | |
Avoid a crash trying to get a substring whose start is after its end.
Constrain the start of the extracted text, not just the end, to the length
of the content.
Approver: ryanpc
Bug: 2323813
Diffstat (limited to 'core/java/android')
| -rw-r--r-- | core/java/android/widget/TextView.java | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/core/java/android/widget/TextView.java b/core/java/android/widget/TextView.java index bcdefb346f2b..cdaba8a006cc 100644 --- a/core/java/android/widget/TextView.java +++ b/core/java/android/widget/TextView.java @@ -4531,6 +4531,11 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener // Now use the delta to determine the actual amount of text // we need. partialEndOffset += delta; + if (partialStartOffset > N) { + partialStartOffset = N; + } else if (partialStartOffset < 0) { + partialStartOffset = 0; + } if (partialEndOffset > N) { partialEndOffset = N; } else if (partialEndOffset < 0) { |
