Program: 76497
Project: 76497
Buggy source:
public void run(){
  TreeItem item=(TreeItem)composite.getSelectedElement();
  Object selectedElement=item.getData();
  if (selectedElement == null || !(selectedElement instanceof ReportDesignHandle)) {
    return;
  }
  reportProject=createProject(item.getText().substring(0,item.getText().lastIndexOf("String_Node_Str")),false);
  if (reportProject != null) {
    PlaceResources.copy(composite.getShell(),reportProject.getLocation().toOSString(),item.getText(),((ReportDesignHandle)selectedElement).getFileName());
  }
  if (item.getParentItem().getText().equals("String_Node_Str")) {
    PlaceResources.copyIncludedPng(composite.getShell(),reportProject.getLocation().toOSString());
  }
  if (item.getParentItem().getText().equals("String_Node_Str")) {
    PlaceResources.copyIncludedLibraries(composite.getShell(),reportProject.getLocation().toOSString());
  }
  if (item.getParentItem().getText().equals(SCRIPTING_CATEGORY)) {
    IProject javaProject=createProject(SCRIPTING_CATEGORY,true);
    if (javaProject != null) {
      createSourceAndOutputFolder(javaProject);
      try {
        setClasspath(javaProject);
      }
 catch (      JavaModelException e) {
        ExceptionHandler.handle(e);
      }
catch (      CoreException e) {
        ExceptionHandler.handle(e);
      }
    }
    Enumeration enumeration=SampleIncludedSourceEntry.getJavaObjects();
    while (enumeration.hasMoreElements()) {
      URL javaObjectURL=(URL)enumeration.nextElement();
      String filename=javaObjectURL.getFile();
      String desFileName=filename.substring(filename.lastIndexOf('/') + 1);
      PlaceResources.copy(composite.getShell(),javaProject.getFolder("String_Node_Str").getLocation().toOSString(),desFileName,javaObjectURL);
    }
    refreshReportProject(javaProject);
  }
  refreshReportProject(reportProject);
  if (item.getParentItem().getParentItem().getText().equals(EXTENDING_CATEGORY)) {
    PlaceExtendedPlugin(item.getParentItem().getText());
  }
}

Fixed version (ground truth):
public void run(){
  TreeItem item=(TreeItem)composite.getSelectedElement();
  Object selectedElement=item.getData();
  if (selectedElement == null || !(selectedElement instanceof ReportDesignHandle)) {
    return;
  }
  reportProject=createProject(item.getText().substring(0,item.getText().lastIndexOf("String_Node_Str")),false);
  if (reportProject != null) {
    PlaceResources.copy(composite.getShell(),reportProject.getLocation().toOSString(),item.getText(),((ReportDesignHandle)selectedElement).getFileName());
  }
  if (item.getParentItem().getText().equals("String_Node_Str")) {
    PlaceResources.copyIncludedPng(composite.getShell(),reportProject.getLocation().toOSString());
  }
  if (item.getParentItem().getText().equals("String_Node_Str")) {
    PlaceResources.copyIncludedLibraries(composite.getShell(),reportProject.getLocation().toOSString());
  }
  if (item.getParentItem().getText().equals(SCRIPTING_CATEGORY)) {
    IProject javaProject=createProject(SCRIPTING_CATEGORY,true);
    if (javaProject != null) {
      createSourceAndOutputFolder(javaProject);
      try {
        setClasspath(javaProject);
      }
 catch (      JavaModelException e) {
        ExceptionHandler.handle(e);
      }
catch (      CoreException e) {
        ExceptionHandler.handle(e);
      }
    }
    Enumeration enumeration=SampleIncludedSourceEntry.getJavaObjects();
    while (enumeration.hasMoreElements()) {
      URL javaObjectURL=(URL)enumeration.nextElement();
      String filename=javaObjectURL.getFile();
      String desFileName=filename.substring(filename.lastIndexOf('/') + 1);
      PlaceResources.copy(composite.getShell(),javaProject.getFolder("String_Node_Str").getLocation().toOSString(),desFileName,javaObjectURL);
    }
    refreshReportProject(javaProject);
  }
  refreshReportProject(reportProject);
  if (item.getParentItem().getParentItem() != null && item.getParentItem().getParentItem().getText().equals(EXTENDING_CATEGORY)) {
    PlaceExtendedPlugin(item.getParentItem().getText());
  }
}