Merge "Fix Layout.primaryIsTrailingPreviousAllLineOffsets" into pi-dev

This commit is contained in:
Bryan Ferris
2019-07-10 21:10:18 +00:00
committed by Android (Google) Code Review

View File

@@ -1099,6 +1099,9 @@ public abstract class Layout {
if (limit > lineEnd) { if (limit > lineEnd) {
limit = lineEnd; limit = lineEnd;
} }
if (limit == start) {
continue;
}
level[limit - lineStart - 1] = level[limit - lineStart - 1] =
(byte) ((runs[i + 1] >>> RUN_LEVEL_SHIFT) & RUN_LEVEL_MASK); (byte) ((runs[i + 1] >>> RUN_LEVEL_SHIFT) & RUN_LEVEL_MASK);
} }
@@ -1194,8 +1197,8 @@ public abstract class Layout {
} }
/** /**
* Computes in linear time the results of calling * Computes in linear time the results of calling #getHorizontal for all offsets on a line.
* #getHorizontal for all offsets on a line. *
* @param line The line giving the offsets we compute information for * @param line The line giving the offsets we compute information for
* @param clamped Whether to clamp the results to the width of the layout * @param clamped Whether to clamp the results to the width of the layout
* @param primary Whether the results should be the primary or the secondary horizontal * @param primary Whether the results should be the primary or the secondary horizontal
@@ -1230,7 +1233,7 @@ public abstract class Layout {
TextLine.recycle(tl); TextLine.recycle(tl);
if (clamped) { if (clamped) {
for (int offset = 0; offset <= wid.length; ++offset) { for (int offset = 0; offset < wid.length; ++offset) {
if (wid[offset] > mWidth) { if (wid[offset] > mWidth) {
wid[offset] = mWidth; wid[offset] = mWidth;
} }