diff options
9 files changed, 35 insertions, 47 deletions
diff --git a/tools/layoutlib/bridge/src/android/graphics/BitmapFactory.java b/tools/layoutlib/bridge/src/android/graphics/BitmapFactory.java index c57aef679c83..096498ba9bd1 100644 --- a/tools/layoutlib/bridge/src/android/graphics/BitmapFactory.java +++ b/tools/layoutlib/bridge/src/android/graphics/BitmapFactory.java @@ -351,7 +351,8 @@ public class BitmapFactory { If the exception happened on open, bm will be null. If it happened on close, bm is still valid. */ - Bridge.getLog().error(null, e); + Bridge.getLog().error(null, + String.format("Error decoding bitmap of id 0x%x", id), e); } finally { try { if (is != null) is.close(); diff --git a/tools/layoutlib/bridge/src/android/graphics/NinePatch_Delegate.java b/tools/layoutlib/bridge/src/android/graphics/NinePatch_Delegate.java index e9fb30a2f2a1..5524f4f1c3fe 100644 --- a/tools/layoutlib/bridge/src/android/graphics/NinePatch_Delegate.java +++ b/tools/layoutlib/bridge/src/android/graphics/NinePatch_Delegate.java @@ -73,7 +73,7 @@ public final class NinePatch_Delegate { oos = new ObjectOutputStream(baos); oos.writeObject(chunk); } catch (IOException e) { - Bridge.getLog().error("Failed to serialize NinePatchChunk.", e); + Bridge.getLog().error(null, "Failed to serialize NinePatchChunk.", e); return null; } finally { if (oos != null) { @@ -196,10 +196,10 @@ public final class NinePatch_Delegate { sChunkCache.put(array, new SoftReference<NinePatchChunk>(chunk)); } } catch (IOException e) { - Bridge.getLog().error("Failed to deserialize NinePatchChunk content.", e); + Bridge.getLog().error(null, "Failed to deserialize NinePatchChunk content.", e); return null; } catch (ClassNotFoundException e) { - Bridge.getLog().error("Failed to deserialize NinePatchChunk class.", e); + Bridge.getLog().error(null, "Failed to deserialize NinePatchChunk class.", e); return null; } finally { if (ois != null) { diff --git a/tools/layoutlib/bridge/src/com/android/internal/util/XmlUtils_Delegate.java b/tools/layoutlib/bridge/src/com/android/internal/util/XmlUtils_Delegate.java index 84a90cdba063..7fa167983814 100644 --- a/tools/layoutlib/bridge/src/com/android/internal/util/XmlUtils_Delegate.java +++ b/tools/layoutlib/bridge/src/com/android/internal/util/XmlUtils_Delegate.java @@ -35,7 +35,6 @@ public class XmlUtils_Delegate { // The Dalvik libraries are able to handle Integer.parse("XXXXXXXX", 16) where XXXXXXX // is > 80000000 but the Java VM cannot. - int value; int sign = 1; int index = 0; int len = nm.length(); @@ -51,7 +50,7 @@ public class XmlUtils_Delegate { if (index == (len - 1)) return 0; - char c = nm.charAt(index + 1); + char c = nm.charAt(index + 1); if ('x' == c || 'X' == c) { index += 2; @@ -61,14 +60,11 @@ public class XmlUtils_Delegate { base = 8; } } - else if ('#' == nm.charAt(index)) - { + else if ('#' == nm.charAt(index)) { index++; base = 16; - - return ((int)Long.parseLong(nm.substring(index), base)) * sign; } - return Integer.parseInt(nm.substring(index), base) * sign; + return ((int)Long.parseLong(nm.substring(index), base)) * sign; } } diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/Bridge.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/Bridge.java index c042327ebf1b..0990cef5b173 100644 --- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/Bridge.java +++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/Bridge.java @@ -142,16 +142,6 @@ public final class Bridge extends com.android.ide.common.rendering.api.Bridge { } @Override - public void error(String tag, Throwable t) { - String message = t.getMessage(); - if (message == null) { - message = t.getClass().getName(); - } - - System.err.println(message); - } - - @Override public void error(String tag, String message, Throwable throwable) { System.err.println(message); } diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java index 1b59621be0bb..36aa33552933 100644 --- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java +++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeInflater.java @@ -178,8 +178,10 @@ public final class BridgeInflater extends LayoutInflater { return inflate(bridgeParser, root); } catch (Exception e) { - Bridge.getLog().error(null, e); - // return null below. + Bridge.getLog().error(null, + "Failed to parse file " + f.getAbsolutePath(), e); + + return null; } } } diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeResources.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeResources.java index 215c5f936628..a56800c036ec 100644 --- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeResources.java +++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeResources.java @@ -43,7 +43,6 @@ import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileReader; -import java.io.IOException; import java.io.InputStream; /** @@ -173,14 +172,13 @@ public final class BridgeResources extends Resources { return ColorStateList.createFromXml(this, new BridgeXmlBlockParser(parser, mContext, resValue.isFramework())); - } catch (XmlPullParserException e) { - Bridge.getLog().error(null, e); - } catch (FileNotFoundException e) { - // will not happen, since we pre-check - } catch (IOException e) { - Bridge.getLog().error(null, e); - } + } catch (Exception e) { + // this is an error and not warning since the file existence is checked before + // attempting to parse it. + Bridge.getLog().error(null, "Failed to parse file " + value, e); + return null; + } } else { // try to load the color state list from an int try { @@ -245,7 +243,8 @@ public final class BridgeResources extends Resources { return new BridgeXmlBlockParser(parser, mContext, mPlatformResourceFlag[0]); } } catch (XmlPullParserException e) { - Bridge.getLog().error(null, e); + Bridge.getLog().error(null, + "Failed to configure parser for " + value.getValue(), e); // we'll return null below. } catch (FileNotFoundException e) { // this shouldn't happen since we check above. @@ -279,7 +278,8 @@ public final class BridgeResources extends Resources { return new BridgeXmlBlockParser(parser, mContext, mPlatformResourceFlag[0]); } } catch (XmlPullParserException e) { - Bridge.getLog().error(null, e); + Bridge.getLog().error(null, + "Failed to configure parser for " + value.getValue(), e); // we'll return null below. } catch (FileNotFoundException e) { // this shouldn't happen since we check above. 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 d36846bc569c..7f118976de84 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 @@ -322,9 +322,9 @@ public final class BridgeTypedArray extends TypedArray { } catch (Exception e) { // this is an error and not warning since the file existence is checked before // attempting to parse it. - Bridge.getLog().error(null, e); + Bridge.getLog().error(null, "Failed to parse file " + value, e); - // return null below. + return null; } // looks like were unable to resolve the color value. diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java index 1c75f7b2a14b..5d5f2a163e76 100644 --- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java +++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java @@ -365,7 +365,7 @@ public class RenderSessionImpl { } // log it - mParams.getLog().error("Scene inflate failed", t); + mParams.getLog().error(null, "Scene inflate failed", t); return ERROR_INFLATION.createResult(t.getMessage(), t); } @@ -481,7 +481,7 @@ public class RenderSessionImpl { } // log it - mParams.getLog().error("Scene Render failed", t); + mParams.getLog().error(null, "Scene Render failed", t); return ERROR_UNKNOWN.createResult(t.getMessage(), t); } diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java index 5427f142697d..fb52c861dda7 100644 --- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java +++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/ResourceHelper.java @@ -27,7 +27,6 @@ import com.android.ninepatch.NinePatchChunk; import org.kxml2.io.KXmlParser; import org.xmlpull.v1.XmlPullParser; -import org.xmlpull.v1.XmlPullParserException; import android.graphics.Bitmap; import android.graphics.Bitmap_Delegate; @@ -40,7 +39,6 @@ import android.graphics.drawable.NinePatchDrawable; import android.util.TypedValue; import java.io.File; -import java.io.FileNotFoundException; import java.io.FileReader; import java.io.IOException; import java.net.MalformedURLException; @@ -162,7 +160,7 @@ public final class ResourceHelper { // URL is wrong, we'll return null below } catch (IOException e) { // failed to read the file, we'll return null below. - Bridge.getLog().error(null, e); + Bridge.getLog().error(null, "Failed lot load " + file.getAbsolutePath(), e); } } @@ -190,13 +188,14 @@ public final class ResourceHelper { d = Drawable.createFromXml(context.getResources(), new BridgeXmlBlockParser(parser, context, isFramework)); return d; - } catch (XmlPullParserException e) { - Bridge.getLog().error(null, e); - } catch (FileNotFoundException e) { - // will not happen, since we pre-check - } catch (IOException e) { - Bridge.getLog().error(null, e); + } catch (Exception e) { + // this is an error and not warning since the file existence is checked before + // attempting to parse it. + Bridge.getLog().error(null, "Failed to parse file " + value, e); } + } else { + Bridge.getLog().error(null, + String.format("File %s does not exist (or is not a file)", stringValue)); } return null; @@ -222,7 +221,7 @@ public final class ResourceHelper { return new BitmapDrawable(context.getResources(), bitmap); } catch (IOException e) { // we'll return null below - Bridge.getLog().error(null, e); + Bridge.getLog().error(null, "Failed lot load " + bmpFile.getAbsolutePath(), e); } } else { // attempt to get a color from the value |