summaryrefslogtreecommitdiffstats
path: root/core/java/android/text/Layout.java
diff options
context:
space:
mode:
authorGilles Debunne <debunne@google.com>2012-06-11 17:46:24 -0700
committerGilles Debunne <debunne@google.com>2012-06-11 17:46:26 -0700
commit2fba3387c31b675c419030145250e5be246c50b0 (patch)
treecc5c16431db6e07c9b6a5fc0cc453e1c0d96c7f0 /core/java/android/text/Layout.java
parent913bf80416a81f2783376939e7ad0b956975b05c (diff)
downloadframeworks_base-2fba3387c31b675c419030145250e5be246c50b0.zip
frameworks_base-2fba3387c31b675c419030145250e5be246c50b0.tar.gz
frameworks_base-2fba3387c31b675c419030145250e5be246c50b0.tar.bz2
Prevent a crash when maxLines is set to 0
Bug 6642222 Using setMaxLines(0) and setMinHeight(30) causes a crash because Layout#getLineRangeForDraw() returns a [0,0] interval in that case. Accessing the Direction in draw causes a NPE. Change-Id: If50f9b554e3cdc598a721b623992e9196982838c
Diffstat (limited to 'core/java/android/text/Layout.java')
-rw-r--r--core/java/android/text/Layout.java1
1 files changed, 1 insertions, 0 deletions
diff --git a/core/java/android/text/Layout.java b/core/java/android/text/Layout.java
index c453a5d..12f16fd 100644
--- a/core/java/android/text/Layout.java
+++ b/core/java/android/text/Layout.java
@@ -456,6 +456,7 @@ public abstract class Layout {
final int top = Math.max(dtop, 0);
final int bottom = Math.min(getLineTop(getLineCount()), dbottom);
+ if (top >= bottom) return TextUtils.packRangeInLong(0, -1);
return TextUtils.packRangeInLong(getLineForVertical(top), getLineForVertical(bottom));
}