From c242cf9ffa5eb0e7294b2007c732798fa3d808d3 Mon Sep 17 00:00:00 2001 From: "Gregory.Shrago" Date: Tue, 31 Jan 2017 10:41:39 +0300 Subject: [PATCH] java.lang.IndexOutOfBoundsException: Invalid index --- .../com/intellij/util/ui/tree/PerFileConfigurableBase.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/util/ui/tree/PerFileConfigurableBase.java b/platform/lang-impl/src/com/intellij/util/ui/tree/PerFileConfigurableBase.java index 3d95f0eedc90..c75513b5c530 100644 --- a/platform/lang-impl/src/com/intellij/util/ui/tree/PerFileConfigurableBase.java +++ b/platform/lang-impl/src/com/intellij/util/ui/tree/PerFileConfigurableBase.java @@ -205,9 +205,9 @@ public abstract class PerFileConfigurableBase implements SearchableConfigurab private void doAddAction(@NotNull AnActionButton button) { int row = myTable.getSelectedRow(); - Pair selectedRow = myModel.data.get(myTable.convertRowIndexToModel(row)); + Object selectedTarget = row >= 0 ? myModel.data.get(myTable.convertRowIndexToModel(row)).first : null; VirtualFile toSelect = myFileToSelect != null ? myFileToSelect : - row >= 0 ? ObjectUtils.tryCast(selectedRow.first, VirtualFile.class) : null; + ObjectUtils.tryCast(selectedTarget, VirtualFile.class); FileChooserDescriptor descriptor = new FileChooserDescriptor(true, true, true, true, true, true); Set chosen = ContainerUtil.newHashSet(FileChooser.chooseFiles(descriptor, myProject, toSelect)); Set set = myModel.data.stream().map(o -> o.first).collect(Collectors.toSet());