Program: 121944
Project: 121944
Buggy source:
public void preComponentsLoad() throws IOException {
  File installationFolder=getInstallationFolder();
  if (installationFolder.exists()) {
    FilesUtils.removeFolder(installationFolder,true);
  }
  FilesUtils.createFoldersIfNotExists(installationFolder.getAbsolutePath(),false);
  FileFilter ff=new FileFilter(){
    public boolean accept(    File pathname){
      if (pathname.getName().equals("String_Node_Str")) {
        return false;
      }
      return true;
    }
  }
;
  if (PluginChecker.isSVNProviderPluginLoaded()) {
    Project currentProject=ProjectManager.getInstance().getCurrentProject();
    if (currentProject != null) {
      String projectLabel=currentProject.getTechnicalLabel();
      String sourcePath=new Path(Platform.getInstanceLocation().getURL().getPath()).toFile().getPath() + File.separatorChar + projectLabel+ File.separatorChar+ ERepositoryObjectType.getFolderName(ERepositoryObjectType.COMPONENTS);
      File source=new File(sourcePath);
      if (source.exists()) {
        for (        File file : source.listFiles(ff)) {
          FilesUtils.copyFolder(file,new File(installationFolder.getAbsolutePath() + File.separator + file.getName()),true,ff,null,true,false);
        }
      }
    }
  }
  File externalComponentsLocation=getExternalComponentsLocation();
  if (externalComponentsLocation != null) {
    if (externalComponentsLocation.exists()) {
      try {
        FilesUtils.copyFolder(externalComponentsLocation,installationFolder,false,ff,null,true,false);
      }
 catch (      IOException e) {
        ExceptionHandler.process(e);
      }
    }
 else {
      logger.warn(Messages.getString("String_Node_Str",externalComponentsLocation.toString()));
    }
  }
}

Fixed version (ground truth):
@Override public void preComponentsLoad() throws IOException {
  File installationFolder=getInstallationFolder();
  if (installationFolder.exists()) {
    FilesUtils.removeFolder(installationFolder,true);
  }
  FilesUtils.createFoldersIfNotExists(installationFolder.getAbsolutePath(),false);
  FileFilter ff=new FileFilter(){
    @Override public boolean accept(    File pathname){
      if (pathname.getName().equals("String_Node_Str")) {
        return false;
      }
      return true;
    }
  }
;
  if (PluginChecker.isSVNProviderPluginLoaded()) {
    Set<Project> allProjects=new HashSet<Project>();
    allProjects.add(ProjectManager.getInstance().getCurrentProject());
    allProjects.addAll(ProjectManager.getInstance().getReferencedProjects());
    for (    Project project : allProjects) {
      String projectLabel=project.getTechnicalLabel();
      String sourcePath=new Path(Platform.getInstanceLocation().getURL().getPath()).toFile().getPath() + File.separatorChar + projectLabel+ File.separatorChar+ ERepositoryObjectType.getFolderName(ERepositoryObjectType.COMPONENTS);
      File source=new File(sourcePath);
      if (source.exists()) {
        for (        File file : source.listFiles(ff)) {
          FilesUtils.copyFolder(file,new File(installationFolder.getAbsolutePath() + File.separator + file.getName()),true,ff,null,true,false);
        }
      }
    }
  }
  File externalComponentsLocation=getExternalComponentsLocation();
  if (externalComponentsLocation != null) {
    if (externalComponentsLocation.exists()) {
      try {
        FilesUtils.copyFolder(externalComponentsLocation,installationFolder,false,ff,null,true,false);
      }
 catch (      IOException e) {
        ExceptionHandler.process(e);
      }
    }
 else {
      logger.warn(Messages.getString("String_Node_Str",externalComponentsLocation.toString()));
    }
  }
}