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 17d2fed49714..23e71b6083c5 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 @@ -29,6 +29,7 @@ import kotlin.Unit; import org.jetbrains.annotations.ApiStatus; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; +import org.jetbrains.annotations.Unmodifiable; import java.nio.file.FileSystems; import java.nio.file.Path; @@ -191,8 +192,8 @@ public class VirtualFileManagerImpl extends VirtualFileManager implements Dispos } @ApiStatus.Internal - public void addAsyncFileListenersTo(@NotNull List listeners) { - listeners.addAll(asyncFileListeners); + public @NotNull @Unmodifiable List withAsyncFileListeners(@NotNull @Unmodifiable List listeners) { + return ContainerUtil.concat(listeners, asyncFileListeners); } @Override diff --git a/platform/platform-impl/src/com/intellij/openapi/vfs/newvfs/AsyncEventSupport.java b/platform/platform-impl/src/com/intellij/openapi/vfs/newvfs/AsyncEventSupport.java index 1e43b5923857..fb3bc8471405 100644 --- a/platform/platform-impl/src/com/intellij/openapi/vfs/newvfs/AsyncEventSupport.java +++ b/platform/platform-impl/src/com/intellij/openapi/vfs/newvfs/AsyncEventSupport.java @@ -80,8 +80,8 @@ public final class AsyncEventSupport { } List appliers = new ArrayList<>(); - List allListeners = new ArrayList<>(EP_NAME.getExtensionList()); - ((VirtualFileManagerImpl)VirtualFileManager.getInstance()).addAsyncFileListenersTo(allListeners); + List allListeners = + ((VirtualFileManagerImpl)VirtualFileManager.getInstance()).withAsyncFileListeners(EP_NAME.getExtensionList()); for (AsyncFileListener listener : allListeners) { ProgressManager.checkCanceled(); long startNs = System.nanoTime();