Program: 118275
Project: 118275
Buggy source:
public boolean performFinish(){
  if (!checkExportFile()) {
    return false;
  }
  ProjectManager pManager=ProjectManager.getInstance();
  Project project=pManager.getCurrentProject().getEmfProject();
  String projectPath=lastPath + "String_Node_Str" + project.getTechnicalLabel();
  if ((itemFromDirectoryRadio.getSelection() && new File(projectPath).exists()) || (itemFromArchiveRadio.getSelection() && new File(archivePathField.getText()).exists())) {
    File oldFile=new File(projectPath).exists() ? new File(projectPath) : new File(archivePathField.getText());
    if (MessageDialogWithToggle.openConfirm(null,Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str"))) {
      deleteFile(oldFile);
    }
 else {
      return false;
    }
  }
  Collection<Item> selectedItems=getSelectedItems();
  if (exportDependencies.getSelection() && !implicitDependences.isEmpty()) {
    for (    IRepositoryViewObject object : implicitDependences) {
      selectedItems.add(object.getProperty().getItem());
    }
  }
  try {
    ExportItemUtil exportItemUtil=new ExportItemUtil();
    if (itemFromArchiveRadio.getSelection()) {
      if (lastPath != null && !lastPath.endsWith(FileConstants.TAR_FILE_SUFFIX) && !lastPath.endsWith(FileConstants.TAR_GZ_FILE_SUFFIX) && !lastPath.endsWith(FileConstants.ZIP_FILE_SUFFIX)) {
        lastPath=lastPath + FileConstants.ZIP_FILE_SUFFIX;
      }
    }
    exportItemUtil.exportItems(new File(lastPath),selectedItems,true,new NullProgressMonitor());
  }
 catch (  Exception e) {
    MessageBoxExceptionHandler.process(e);
  }
  return true;
}

Fixed version (ground truth):
public boolean performFinish(){
  if (!checkExportFile()) {
    return false;
  }
  ProjectManager pManager=ProjectManager.getInstance();
  Project project=pManager.getCurrentProject().getEmfProject();
  String projectPath=lastPath + "String_Node_Str" + project.getTechnicalLabel();
  if ((itemFromDirectoryRadio.getSelection() && new File(projectPath).exists()) || (itemFromArchiveRadio.getSelection() && new File(archivePathField.getText()).exists())) {
    File oldFile=new File(projectPath).exists() ? new File(projectPath) : new File(archivePathField.getText());
    if (MessageDialogWithToggle.openConfirm(null,Messages.getString("String_Node_Str"),Messages.getString("String_Node_Str"))) {
      deleteFile(oldFile);
    }
 else {
      return false;
    }
  }
  Collection<Item> selectedItems=getSelectedItems();
  if (exportDependencies.getSelection() && !implicitDependences.isEmpty()) {
    for (    IRepositoryViewObject object : implicitDependences) {
      selectedItems.add(object.getProperty().getItem());
    }
  }
  List<String> folders=new ArrayList<String>();
  for (  Object obj : filteredCheckboxTree.getViewer().getCheckedElements()) {
    if (obj instanceof RepositoryNode) {
      RepositoryNode repositoryNode=(RepositoryNode)obj;
      if (repositoryNode.getType() == ENodeType.SIMPLE_FOLDER && repositoryNode.getObject() instanceof Folder) {
        Folder folder=(Folder)repositoryNode.getObject();
        ERepositoryObjectType contentType=repositoryNode.getContentType();
        IProjectRepositoryNode root=repositoryNode.getRoot();
        if (root != null && root.getProject() != null) {
          IPath path=new Path(root.getProject().getTechnicalLabel());
          path=path.append(contentType.getFolder());
          String folderPath=folder.getPath();
          if (folderPath != null && !"String_Node_Str".equals(folderPath)) {
            path=path.append(folderPath);
          }
          path=path.append(folder.getLabel());
          folders.add(path.toPortableString() + "String_Node_Str");
        }
      }
    }
  }
  try {
    ExportItemUtil exportItemUtil=new ExportItemUtil();
    if (itemFromArchiveRadio.getSelection()) {
      if (lastPath != null && !lastPath.endsWith(FileConstants.TAR_FILE_SUFFIX) && !lastPath.endsWith(FileConstants.TAR_GZ_FILE_SUFFIX) && !lastPath.endsWith(FileConstants.ZIP_FILE_SUFFIX)) {
        lastPath=lastPath + FileConstants.ZIP_FILE_SUFFIX;
      }
    }
    exportItemUtil.exportItems(new File(lastPath),selectedItems,folders,true,new NullProgressMonitor());
  }
 catch (  Exception e) {
    MessageBoxExceptionHandler.process(e);
  }
  return true;
}