diff --git a/platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexDataInitialization.java b/platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexDataInitialization.java index 6b1046c34ada..91052c49e336 100644 --- a/platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexDataInitialization.java +++ b/platform/lang-impl/src/com/intellij/util/indexing/FileBasedIndexDataInitialization.java @@ -111,7 +111,13 @@ final class FileBasedIndexDataInitialization extends IndexDataInitializer new FileBasedIndexImpl.MyShutDownTask().run(); + // anonymous class is required to make sure the new instance is created + Disposable disposable = new Disposable() { + @Override + public void dispose() { + new FileBasedIndexImpl.MyShutDownTask().run(); + } + }; ApplicationManager.getApplication().addApplicationListener(new MyApplicationListener(fileBasedIndex), disposable); Disposer.register(fs, disposable); myFileBasedIndex.setUpShutDownTask();