Program: 127450
Project: 127450
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=null;
            EMap<String,String> jarsToRelative=LibrariesIndexManager.getInstance().getIndex().getJarsToRelativePath();
            String relativePath=jarsToRelative.get(name);
            if (relativePath != null) {
              if (relativePath.startsWith("String_Node_Str")) {
                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(LibrariesManagerUtils.getLibrariesPath(ECodeLanguage.JAVA) + File.separatorChar + name);
            }
            FilesUtils.copyFile(source,libsTargetFile);
            synJavaLibs(source);
          }
          eclipseProject.refreshLocal(IResource.DEPTH_INFINITE,new NullProgressMonitor());
        }
 catch (        IOException e) {
          CommonExceptionHandler.process(e);
        }
catch (        CoreException e) {
          CommonExceptionHandler.process(e);
        }
      }
    }
;
    repositoryWorkUnit.setAvoidUnloadResources(true);
    if (GlobalServiceRegister.getDefault().isServiceRegistered(IRepositoryService.class)) {
      IRepositoryService service=(IRepositoryService)GlobalServiceRegister.getDefault().getService(IRepositoryService.class);
      service.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=new File(LibrariesManagerUtils.getLibrariesPath(ECodeLanguage.JAVA) + File.separatorChar + name);
            FilesUtils.copyFile(source,libsTargetFile);
            synJavaLibs(source);
          }
          eclipseProject.refreshLocal(IResource.DEPTH_INFINITE,new NullProgressMonitor());
        }
 catch (        IOException e) {
          CommonExceptionHandler.process(e);
        }
catch (        CoreException e) {
          CommonExceptionHandler.process(e);
        }
      }
    }
;
    repositoryWorkUnit.setAvoidUnloadResources(true);
    if (GlobalServiceRegister.getDefault().isServiceRegistered(IRepositoryService.class)) {
      IRepositoryService service=(IRepositoryService)GlobalServiceRegister.getDefault().getService(IRepositoryService.class);
      service.getProxyRepositoryFactory().executeRepositoryWorkUnit(repositoryWorkUnit);
    }
  }
}