From 2fba3387c31b675c419030145250e5be246c50b0 Mon Sep 17 00:00:00 2001 From: Gilles Debunne Date: Mon, 11 Jun 2012 17:46:24 -0700 Subject: 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 --- core/java/android/text/Layout.java | 1 + 1 file changed, 1 insertion(+) (limited to 'core/java/android/text/Layout.java') 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)); } -- cgit v1.1