From c7c8c599a636a105db0d2eac3b8b332532a7a40f Mon Sep 17 00:00:00 2001 From: Xavier Ducrohet Date: Thu, 17 Mar 2011 14:11:23 -0700 Subject: Merge 67450db0 from honeycomb. Do not merge. Change-Id: I0ca140dd6d9279ff313f930739ad40fbbed4f335 LayoutLib: TypedArray.getDimensionPixelSize can actually return <0 --- .../layoutlib/bridge/android/BridgeTypedArray.java | 15 ++++----------- 1 file changed, 4 insertions(+), 11 deletions(-) diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java index 138a455004be..b9f769f2af06 100644 --- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java +++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeTypedArray.java @@ -491,18 +491,11 @@ public final class BridgeTypedArray extends TypedArray { if (ResourceHelper.stringToFloat(s, mValue)) { float f = mValue.getDimension(mBridgeResources.mMetrics); - if (f < 0) { - // negative values are not allowed in pixel dimensions - Bridge.getLog().error(LayoutLog.TAG_BROKEN, - "Negative pixel dimension: " + s, - null, null /*data*/); - return defValue; - } - + final int res = (int)(f+0.5f); + if (res != 0) return res; if (f == 0) return 0; - if (f < 1) return 1; - - return (int)(f+0.5f); + if (f > 0) return 1; + return defValue; // this is basically unreachable. } // looks like we were unable to resolve the dimension value -- cgit v1.2.3-59-g8ed1b