From 811f2efa6bd4603a51ff49833801b8cd9714b5d2 Mon Sep 17 00:00:00 2001 From: Denis Fokin Date: Tue, 26 Sep 2017 11:58:30 +0300 Subject: [PATCH] IDEA-177548 NPE at com.intellij.openapi.wm.ToolWindowManager.getActiveToolWindow on closing a project --- .../com/intellij/openapi/wm/ToolWindowManager.java | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/platform/platform-api/src/com/intellij/openapi/wm/ToolWindowManager.java b/platform/platform-api/src/com/intellij/openapi/wm/ToolWindowManager.java index 0615fd573991..398799009678 100644 --- a/platform/platform-api/src/com/intellij/openapi/wm/ToolWindowManager.java +++ b/platform/platform-api/src/com/intellij/openapi/wm/ToolWindowManager.java @@ -165,10 +165,16 @@ public abstract class ToolWindowManager { @Nullable public static String getActiveId () { - ToolWindowManager instance = getInstance(Objects.requireNonNull(Objects.requireNonNull(IdeFocusManager.getGlobalInstance().getLastFocusedFrame()).getProject())); - - return instance == null ? "" : instance.getActiveToolWindowId(); + IdeFrame lastFocusedFrame = IdeFocusManager.getGlobalInstance().getLastFocusedFrame(); + if (lastFocusedFrame !=null) { + Project project = lastFocusedFrame.getProject(); + if (project != null) { + ToolWindowManager instance = getInstance(project); + return instance == null ? "" : instance.getActiveToolWindowId(); + } + } + return ""; }