Merge "Fix OOB crash in ContentCapture for translated views" into sc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
f7fb6c535e
@@ -11857,6 +11857,15 @@ public class TextView extends View implements ViewTreeObserver.OnPreDrawListener
|
||||
|
||||
if (text != null) {
|
||||
if (expandedTopChar > 0 || expandedBottomChar < text.length()) {
|
||||
// Cap the offsets to avoid an OOB exception. That can happen if the
|
||||
// displayed/layout text, on which these offsets are calculated, is longer
|
||||
// than the original text (such as when the view is translated by the
|
||||
// platform intelligence).
|
||||
// TODO(b/196433694): Figure out how to better handle the offset
|
||||
// calculations for this case (so we don't unnecessarily cutoff the original
|
||||
// text, for example).
|
||||
expandedTopChar = Math.min(expandedTopChar, text.length());
|
||||
expandedBottomChar = Math.min(expandedBottomChar, text.length());
|
||||
text = text.subSequence(expandedTopChar, expandedBottomChar);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user