ignore ignored path variables (IDEA-59992)

This commit is contained in:
anna
2010-10-22 21:52:23 +04:00
parent a00948a3d4
commit 614ec17d60
3 changed files with 13 additions and 2 deletions
@@ -125,7 +125,7 @@ public class ClasspathStorage implements StateStorage {
}
}
final boolean macrosOk = ProjectMacrosUtil.checkMacros(module.getProject(), macros);
final boolean macrosOk = ProjectMacrosUtil.checkNonIgnoredMacros(module.getProject(), macros);
PathMacroManager.getInstance(module).expandPaths(element);
ModuleRootManagerImpl.ModuleRootManagerState moduleRootManagerState = new ModuleRootManagerImpl.ModuleRootManagerState();
moduleRootManagerState.readExternal(element);
@@ -53,6 +53,16 @@ public class ProjectMacrosUtil {
return editor.isOK();
}
public static boolean checkNonIgnoredMacros(final Project project, final Set<String> usedMacros){
final PathMacros pathMacros = PathMacros.getInstance();
for (Iterator<String> iterator = usedMacros.iterator(); iterator.hasNext();) {
if (pathMacros.isIgnoredMacroName(iterator.next())) {
iterator.remove();
}
}
return checkMacros(project, usedMacros);
}
public static boolean checkMacros(final Project project, final Set<String> usedMacros) {
final Set<String> defined = getDefinedMacros();
usedMacros.removeAll(defined);
@@ -16,6 +16,7 @@
package org.jetbrains.idea.eclipse.importWizard;
import com.intellij.openapi.application.ApplicationManager;
import com.intellij.openapi.application.PathMacros;
import com.intellij.openapi.application.ex.ApplicationInfoEx;
import com.intellij.openapi.diagnostic.Logger;
import com.intellij.openapi.fileChooser.FileChooser;
@@ -170,7 +171,7 @@ public class EclipseImportBuilder extends ProjectImportBuilder<String> implement
return false;
}
if (!ProjectMacrosUtil.checkMacros(dstProject, variables)) {
if (!ProjectMacrosUtil.checkNonIgnoredMacros(dstProject, variables)) {
return false;
}