+ [android] fix npe caused by tracing
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/ae69e1e8 Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/ae69e1e8 Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/ae69e1e8 Branch: refs/heads/master Commit: ae69e1e8d83b5a51bf097432faab35d539048a6b Parents: 0faa131 Author: misakuo <misa...@apache.org> Authored: Mon Sep 25 17:17:27 2017 +0800 Committer: misakuo <misa...@apache.org> Committed: Mon Sep 25 17:17:27 2017 +0800 ---------------------------------------------------------------------- .../weex/dom/action/AbstractAddElementAction.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ae69e1e8/android/sdk/src/main/java/com/taobao/weex/dom/action/AbstractAddElementAction.java ---------------------------------------------------------------------- diff --git a/android/sdk/src/main/java/com/taobao/weex/dom/action/AbstractAddElementAction.java b/android/sdk/src/main/java/com/taobao/weex/dom/action/AbstractAddElementAction.java index 3d026ee..9f35263 100644 --- a/android/sdk/src/main/java/com/taobao/weex/dom/action/AbstractAddElementAction.java +++ b/android/sdk/src/main/java/com/taobao/weex/dom/action/AbstractAddElementAction.java @@ -49,9 +49,11 @@ public abstract class AbstractAddElementAction extends TraceableAction implement } long startNanos = System.nanoTime(); WXComponent component = WXComponentFactory.newInstance(context.getInstance(), dom, parent); - component.mTraceInfo.domThreadStart = dom.mDomThreadTimestamp; - component.mTraceInfo.rootEventId = mTracingEventId; - component.mTraceInfo.domQueueTime = mDomQueueTime; + if (component != null) { + component.mTraceInfo.domThreadStart = dom.mDomThreadTimestamp; + component.mTraceInfo.rootEventId = mTracingEventId; + component.mTraceInfo.domQueueTime = mDomQueueTime; + } context.registerComponent(dom.getRef(), component); if (component instanceof WXVContainer) { @@ -65,7 +67,9 @@ public abstract class AbstractAddElementAction extends TraceableAction implement } } } - component.mTraceInfo.domThreadNanos = System.nanoTime() - startNanos; + if (component != null) { + component.mTraceInfo.domThreadNanos = System.nanoTime() - startNanos; + } return component; }