From 21365c723735ace79bd32f2fb583013d660577e5 Mon Sep 17 00:00:00 2001 From: hengyunabc Date: Sun, 24 May 2020 00:27:19 +0800 Subject: [PATCH] fix process null problem. #1184 --- .../taobao/arthas/core/advisor/AdviceListenerManager.java | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/core/src/main/java/com/taobao/arthas/core/advisor/AdviceListenerManager.java b/core/src/main/java/com/taobao/arthas/core/advisor/AdviceListenerManager.java index 1cf3fb2e7..ab710776d 100644 --- a/core/src/main/java/com/taobao/arthas/core/advisor/AdviceListenerManager.java +++ b/core/src/main/java/com/taobao/arthas/core/advisor/AdviceListenerManager.java @@ -11,6 +11,7 @@ import com.alibaba.arthas.deps.org.slf4j.LoggerFactory; import com.taobao.arthas.common.concurrent.ConcurrentWeakKeyHashMap; import com.taobao.arthas.core.server.ArthasBootstrap; import com.taobao.arthas.core.shell.system.ExecStatus; +import com.taobao.arthas.core.shell.system.Process; import com.taobao.arthas.core.shell.system.ProcessAware; /** @@ -69,7 +70,11 @@ public class AdviceListenerManager { for (AdviceListener listener : listeners) { if (listener instanceof ProcessAware) { ProcessAware processAware = (ProcessAware) listener; - ExecStatus status = processAware.getProcess().status(); + Process process = processAware.getProcess(); + if (process == null) { + continue; + } + ExecStatus status = process.status(); if (!status.equals(ExecStatus.TERMINATED)) { newResult.add(listener); }