From e034c2d763f8a18f366a7652d6787904b219b935 Mon Sep 17 00:00:00 2001 From: Anna Kozlova Date: Mon, 5 Oct 2015 13:46:01 +0200 Subject: [PATCH] inconsistency between source/target directories during package move EA-39065 - AIOOBE: MoveClassesOrPackagesProcessor.performRefactoring --- .../MoveClassesOrPackagesProcessor.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesProcessor.java b/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesProcessor.java index 409e23b7e158..5b508d4e728f 100644 --- a/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesProcessor.java +++ b/java/java-impl/src/com/intellij/refactoring/move/moveClassesOrPackages/MoveClassesOrPackagesProcessor.java @@ -521,6 +521,11 @@ public class MoveClassesOrPackagesProcessor extends BaseRefactoringProcessor { } } else { for (PsiDirectory directory : directories) { + if (myMoveDestination.verify(directory) != null) { + //e.g. directory is excluded so there is no source root for it, hence target directory would be missed from newDirectories + continue; + } + oldToNewElementsMapping.put(directory, newDirectories[i++]); } }