Merge "Fix Layout.primaryIsTrailingPreviousAllLineOffsets" into oc-mr1-dev

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

View File

@@ -1070,6 +1070,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);
} }
@@ -1165,8 +1168,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
@@ -1201,7 +1204,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;
} }