diff --git a/platform/platform-impl/src/com/intellij/openapi/vfs/impl/local/NativeFileWatcherImpl.java b/platform/platform-impl/src/com/intellij/openapi/vfs/impl/local/NativeFileWatcherImpl.java index 66f0aa241918..84829400ca38 100644 --- a/platform/platform-impl/src/com/intellij/openapi/vfs/impl/local/NativeFileWatcherImpl.java +++ b/platform/platform-impl/src/com/intellij/openapi/vfs/impl/local/NativeFileWatcherImpl.java @@ -216,12 +216,18 @@ public final class NativeFileWatcherImpl extends PluggableFileWatcher { try { writeLine(EXIT_COMMAND); } catch (IOException ignore) { } if (!processHandler.waitFor(10)) { - ApplicationManager.getApplication().executeOnPooledThread(() -> { + Runnable r = () -> { if (!processHandler.waitFor(500)) { LOG.warn("File watcher is still alive. Doing a force quit."); processHandler.destroyProcess(); } - }); + }; + if (myIsShuttingDown) { + new Thread(r, "fsnotifier shutdown").start(); + } + else { + ApplicationManager.getApplication().executeOnPooledThread(r); + } } }