From f73a87c27e2d610ee304ea5dac3d45385f972eba Mon Sep 17 00:00:00 2001 From: develar Date: Fri, 26 Apr 2019 14:23:54 +0200 Subject: [PATCH] IDEA-CR-46726 extension point `com.intellij.virtualFileSystem` maybe not defined in tests GitOrigin-RevId: d1205ea75d843351ce5b58fafad41efa4bac018b --- .../openapi/vfs/impl/VirtualFileManagerImpl.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/platform/core-impl/src/com/intellij/openapi/vfs/impl/VirtualFileManagerImpl.java b/platform/core-impl/src/com/intellij/openapi/vfs/impl/VirtualFileManagerImpl.java index 4136057c9204..e99cb6c155b7 100644 --- a/platform/core-impl/src/com/intellij/openapi/vfs/impl/VirtualFileManagerImpl.java +++ b/platform/core-impl/src/com/intellij/openapi/vfs/impl/VirtualFileManagerImpl.java @@ -7,6 +7,7 @@ import com.intellij.openapi.application.ApplicationManager; import com.intellij.openapi.application.ModalityState; import com.intellij.openapi.application.impl.ApplicationInfoImpl; import com.intellij.openapi.diagnostic.Logger; +import com.intellij.openapi.extensions.ExtensionPoint; import com.intellij.openapi.util.Disposer; import com.intellij.openapi.util.KeyedExtensionCollector; import com.intellij.openapi.vfs.*; @@ -27,7 +28,6 @@ import org.jetbrains.annotations.Nullable; import java.util.ArrayList; import java.util.Collections; import java.util.List; -import java.util.Objects; public class VirtualFileManagerImpl extends VirtualFileManagerEx implements Disposable { protected static final Logger LOG = Logger.getInstance("#com.intellij.openapi.vfs.impl.VirtualFileManagerImpl"); @@ -57,11 +57,16 @@ public class VirtualFileManagerImpl extends VirtualFileManagerEx implements Disp public VirtualFileManagerImpl(@NotNull List fileSystems, @NotNull MessageBus bus) { List physicalFileSystems = new ArrayList<>(fileSystems); - for (KeyedLazyInstance bean : Objects.requireNonNull(myCollector.getPoint()).getExtensionList()) { - if (((VirtualFileSystemBean)bean).physical) { - physicalFileSystems.add(bean.getInstance()); + + ExtensionPoint> point = myCollector.getPoint(); + if (point != null) { + for (KeyedLazyInstance bean : point.getExtensionList()) { + if (((VirtualFileSystemBean)bean).physical) { + physicalFileSystems.add(bean.getInstance()); + } } } + myPhysicalFileSystems = physicalFileSystems.toArray(new VirtualFileSystem[0]); for (VirtualFileSystem fileSystem : fileSystems) {