OSDN Git Service

Fix Layout.primaryIsTrailingPreviousAllLineOffsets
authorMihai Popa <popam@google.com>
Tue, 25 Jun 2019 10:15:18 +0000 (11:15 +0100)
committerBryan Ferris <bferris@google.com>
Wed, 10 Jul 2019 18:01:49 +0000 (18:01 +0000)
commit42a6af7a11842cea3faa97d24dba209a97101bb3
tree2da1f575c06799a67396b31cc3680aeac038f485
parentb3326d2ceb918d99874303a5f0a6d024ae257ba6
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)
core/java/android/text/Layout.java