From 8c16f89d45302265835d9d222f4d64e3c23a8a2d Mon Sep 17 00:00:00 2001 From: Sergey Prigogin Date: Sun, 1 Aug 2010 22:37:50 +0000 Subject: [PATCH] Bug 321441. --- .../rename/CRenameProcessorDelegate.java | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameProcessorDelegate.java b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameProcessorDelegate.java index d0ee515963c..10be79d4a19 100644 --- a/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameProcessorDelegate.java +++ b/core/org.eclipse.cdt.ui/src/org/eclipse/cdt/internal/ui/refactoring/rename/CRenameProcessorDelegate.java @@ -13,6 +13,7 @@ package org.eclipse.cdt.internal.ui.refactoring.rename; import java.util.ArrayList; +import java.util.Collection; import java.util.Collections; import java.util.Comparator; import java.util.HashSet; @@ -160,7 +161,7 @@ public abstract class CRenameProcessorDelegate { * @return A set of files containing references to the name, or null if * exhaustive file search is requested. */ - private IResource[] getFileFilter() { + private Collection getFileFilter() { if ((getSelectedOptions() & CRefactory.OPTION_EXHAUSTIVE_FILE_SEARCH) != 0) { return null; } @@ -200,7 +201,7 @@ public abstract class CRenameProcessorDelegate { } } - return files.toArray(new IResource[files.size()]); + return files; } public RefactoringStatus checkInitialConditions(IProgressMonitor pm) throws CoreException, OperationCanceledException { @@ -216,9 +217,13 @@ public abstract class CRenameProcessorDelegate { // perform text-search fMatches= new ArrayList(); TextSearchWrapper txtSearch= getManager().getTextSearch(); + Collection fileFilter = getFileFilter(); + if (!fileFilter.contains(file)) { + fileFilter.add(file); + } IStatus stat= txtSearch.searchWord(getSearchScope(), file, getSelectedWorkingSet(), - getFileFilter(), getManager().getCCppPatterns(), getArgument().getName(), - new SubProgressMonitor(monitor, 1), fMatches); + fileFilter.toArray(new IResource[fileFilter.size()]), getManager().getCCppPatterns(), + getArgument().getName(), new SubProgressMonitor(monitor, 1), fMatches); if (monitor.isCanceled()) { throw new OperationCanceledException(); }