OSDN Git Service

Fix Layout.primaryIsTrailingPreviousAllLineOffsets
authorMihai Popa <popam@google.com>
Tue, 25 Jun 2019 10:15:18 +0000 (11:15 +0100)
committerArjun Garg <arjgarg@google.com>
Thu, 11 Jul 2019 19:10:09 +0000 (12:10 -0700)
commit31d41018707e379ae810295596d5ecd83cc23d72
tree647be5c3ffa5d4bfeadaf9597a176daaadaac0b1
parent67a4f7bac877e7b793d5122a0cdf289722a4d0f4
Fix Layout.primaryIsTrailingPreviousAllLineOffsets

The CL fixes a crash in Layout.primaryIsTrailingPreviousAllLineOffsets.
The crash was happening when the method was called for a line beginning
with an empty bidi run. This could happen, for example, for empty text -
I was unable to find any other case. The CL improves the existing test
for the method with this case, which was previously crashing.

The CL also fixes a potential crash in getLineHorizontals. However, this
bug could never happen as in the current code path clamped is always
false (and kept as parameter for parity with getHorizontal).

Bug: 135444178
Bug: 78464361
Test: atest FrameworksCoreTests:android.text.LayoutTest\#testPrimaryIsTrailingPrevious
Change-Id: I47157abe1d74675884734e3810628a566e40c1b4
(cherry picked from commit 7ad499d00716f45fffdf7331493ed21d1b8d9b77)
(cherry picked from commit d3e81cd63f91533915feb159e0b4241729592963)
core/java/android/text/Layout.java