From be8a46cd2d5d87ae89b45b5fc2a21de7c3c96d19 Mon Sep 17 00:00:00 2001 From: anna Date: Thu, 7 Apr 2011 17:24:42 +0200 Subject: [PATCH] do not try to move empty set (EA-26588 - AIOOBE: MoveFilesOrDirectoriesViewDescriptor.) --- .../MoveFilesOrDirectoriesUtil.java | 14 +++++++++----- 1 file changed, 9 insertions(+), 5 deletions(-) diff --git a/platform/lang-impl/src/com/intellij/refactoring/move/moveFilesOrDirectories/MoveFilesOrDirectoriesUtil.java b/platform/lang-impl/src/com/intellij/refactoring/move/moveFilesOrDirectories/MoveFilesOrDirectoriesUtil.java index d63c664005f7..bcde7336ce69 100644 --- a/platform/lang-impl/src/com/intellij/refactoring/move/moveFilesOrDirectories/MoveFilesOrDirectoriesUtil.java +++ b/platform/lang-impl/src/com/intellij/refactoring/move/moveFilesOrDirectories/MoveFilesOrDirectoriesUtil.java @@ -123,14 +123,18 @@ public class MoveFilesOrDirectoriesUtil { manager.checkMove(psiElement, targetDirectory); els.add(psiElement); } - - new MoveFilesOrDirectoriesProcessor(project, els.toArray(new PsiElement[els.size()]), targetDirectory, - RefactoringSettings.getInstance().MOVE_SEARCH_FOR_REFERENCES_FOR_FILE, - false, false, moveCallback, new Runnable() { + final Runnable callback = new Runnable() { public void run() { if (moveDialog != null) moveDialog.close(DialogWrapper.CANCEL_EXIT_CODE); } - }).run(); + }; + if (els.isEmpty()) { + callback.run(); + return; + } + new MoveFilesOrDirectoriesProcessor(project, els.toArray(new PsiElement[els.size()]), targetDirectory, + RefactoringSettings.getInstance().MOVE_SEARCH_FOR_REFERENCES_FOR_FILE, + false, false, moveCallback, callback).run(); } catch (IncorrectOperationException e) { CommonRefactoringUtil.showErrorMessage(RefactoringBundle.message("error.title"), e.getMessage(),