From 6233a47b563bbb823bd1eb3b582afb28026ba074 Mon Sep 17 00:00:00 2001 From: Sergey Malenkov Date: Mon, 8 Feb 2016 21:21:52 +0300 Subject: [PATCH] IDEA-151337 NPE at com.intellij.openapi.application.ModalityState.current(ModalityState.java:69) when setting Theme on sartup --- .../platform-api/src/com/intellij/util/Alarm.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/platform/platform-api/src/com/intellij/util/Alarm.java b/platform/platform-api/src/com/intellij/util/Alarm.java index 619926c35fd7..e8215fe5d190 100644 --- a/platform/platform-api/src/com/intellij/util/Alarm.java +++ b/platform/platform-api/src/com/intellij/util/Alarm.java @@ -149,12 +149,19 @@ public class Alarm implements Disposable { } } + private ModalityState getModalityState() { + if (myThreadToUse != ThreadToUse.SWING_THREAD) return null; + Application application = ApplicationManager.getApplication(); + if (application == null) return null; + return application.getCurrentModalityState(); + } + public void addRequest(@NotNull Runnable request, long delayMillis) { - _addRequest(request, delayMillis, myThreadToUse == ThreadToUse.SWING_THREAD ? ModalityState.current() : null); + _addRequest(request, delayMillis, getModalityState()); } public void addRequest(@NotNull Runnable request, int delayMillis) { - _addRequest(request, delayMillis, myThreadToUse == ThreadToUse.SWING_THREAD ? ModalityState.current() : null); + _addRequest(request, delayMillis, getModalityState()); } public void addComponentRequest(@NotNull Runnable request, int delay) {