Program: 127538
Project: 127538
Buggy source:
private void resetAndRefreshLocal(final String names[]){
  resetModulesNeeded();
  Project currentProject=ProjectManager.getInstance().getCurrentProject();
  final String projectLabel=currentProject.getTechnicalLabel();
  IWorkspace workspace=ResourcesPlugin.getWorkspace();
  final IProject eclipseProject=workspace.getRoot().getProject(projectLabel);
  if (PluginChecker.isSVNProviderPluginLoaded()) {
    RepositoryWorkUnit repositoryWorkUnit=new RepositoryWorkUnit(currentProject,"String_Node_Str"){
      @Override public void run() throws PersistenceException {
        try {
          for (          String name : names) {
            String path=new Path(Platform.getInstanceLocation().getURL().getPath()).toFile().getPath();
            path=path + File.separatorChar + projectLabel+ File.separatorChar+ ERepositoryObjectType.getFolderName(ERepositoryObjectType.LIBS)+ File.separatorChar+ name;
            File libsTargetFile=new File(path);
            File source=new File(PreferencesUtilities.getLibrariesPath(ECodeLanguage.JAVA) + File.separatorChar + name);
            FilesUtils.copyFile(source,libsTargetFile);
            synJavaLibs(source);
          }
          eclipseProject.refreshLocal(IResource.DEPTH_INFINITE,new NullProgressMonitor());
        }
 catch (        IOException e) {
          ExceptionHandler.process(e);
        }
catch (        CoreException e) {
          ExceptionHandler.process(e);
        }
      }
    }
;
    repositoryWorkUnit.setAvoidUnloadResources(true);
    CorePlugin.getDefault().getRepositoryService().getProxyRepositoryFactory().executeRepositoryWorkUnit(repositoryWorkUnit);
  }
}

Fixed version (ground truth):
private void resetAndRefreshLocal(final String names[]){
  resetModulesNeeded();
  Project currentProject=ProjectManager.getInstance().getCurrentProject();
  final String projectLabel=currentProject.getTechnicalLabel();
  IWorkspace workspace=ResourcesPlugin.getWorkspace();
  final IProject eclipseProject=workspace.getRoot().getProject(projectLabel);
  if (PluginChecker.isSVNProviderPluginLoaded()) {
    RepositoryWorkUnit repositoryWorkUnit=new RepositoryWorkUnit(currentProject,"String_Node_Str"){
      @Override public void run() throws PersistenceException {
        try {
          for (          String name : names) {
            String path=new Path(Platform.getInstanceLocation().getURL().getPath()).toFile().getPath();
            path=path + File.separatorChar + projectLabel+ File.separatorChar+ ERepositoryObjectType.getFolderName(ERepositoryObjectType.LIBS)+ File.separatorChar+ name;
            File libsTargetFile=new File(path);
            File source=null;
            EMap<String,String> jarsToRelative=LibrariesIndexManager.getInstance().getIndex().getJarsToRelativePath();
            String relativePath=jarsToRelative.get(name);
            if (relativePath != null) {
              if (!relativePath.startsWith("String_Node_Str")) {
                relativePath="String_Node_Str" + relativePath;
              }
              try {
                URI uri=new URI(relativePath);
                URL url=FileLocator.toFileURL(uri.toURL());
                source=new File(url.getFile());
              }
 catch (              URISyntaxException e) {
                CommonExceptionHandler.process(e);
              }
            }
            if (source == null) {
              source=new File(PreferencesUtilities.getLibrariesPath(ECodeLanguage.JAVA) + File.separatorChar + name);
            }
            FilesUtils.copyFile(source,libsTargetFile);
            synJavaLibs(source);
          }
          eclipseProject.refreshLocal(IResource.DEPTH_INFINITE,new NullProgressMonitor());
        }
 catch (        IOException e) {
          ExceptionHandler.process(e);
        }
catch (        CoreException e) {
          ExceptionHandler.process(e);
        }
      }
    }
;
    repositoryWorkUnit.setAvoidUnloadResources(true);
    CorePlugin.getDefault().getRepositoryService().getProxyRepositoryFactory().executeRepositoryWorkUnit(repositoryWorkUnit);
  }
}