Program: 133469
Project: 133469
Buggy source:
@Override protected void createHeaderContents(IManagedForm headerForm){
  super.createHeaderContents(headerForm);
  goButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if ("String_Node_Str".equals(processName)) {
        Thread ppThread=new Thread(new Runnable(){
          @Override public void run(){
            ArrayList<ICEResource> resourceList=new ArrayList<ICEResource>();
            ArrayList<String> enabledPPs=new ArrayList<String>();
            ResourceComponent resources;
            for (            Entry postProcessor : postProcessors.retrieveAllEntries()) {
              if ("String_Node_Str".equals(postProcessor.getValue())) {
                enabledPPs.add(postProcessor.getName());
              }
            }
            if (!enabledPPs.isEmpty()) {
              while (resourceList.size() != enabledPPs.size()) {
                resources=resourceComponentPage.getResourceComponent();
                try {
                  Thread.sleep(500);
                }
 catch (                InterruptedException e) {
                  logger.error(getClass().getName() + "String_Node_Str",e);
                }
                for (                ICEResource r : resources.getResources()) {
                  if (enabledPPs.contains(FilenameUtils.removeExtension(r.getName())) && hasValidPostprocessorData(r)) {
                    resourceList.add(r);
                  }
                }
              }
              for (              final ICEResource r : resourceList) {
                PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable(){
                  @Override public void run(){
                    try {
                      MOOSEFormEditor.this.setActivePage(1);
                      resourceComponentPage.showResource(r);
                    }
 catch (                    PartInitException e) {
                      logger.error(getClass().getName() + "String_Node_Str",e);
                    }
                  }
                }
);
              }
            }
          }
        }
);
        ppThread.start();
      }
    }
  }
);
  return;
}

Fixed version (ground truth):
@Override protected void createHeaderContents(IManagedForm headerForm){
  super.createHeaderContents(headerForm);
  goButton.addSelectionListener(new SelectionAdapter(){
    @Override public void widgetSelected(    SelectionEvent e){
      if ("String_Node_Str".equals(processName)) {
        Thread ppThread=new Thread(new Runnable(){
          @Override public void run(){
            ArrayList<ICEResource> resourceList=new ArrayList<ICEResource>();
            ArrayList<String> enabledPPs=new ArrayList<String>();
            ResourceComponent resources;
            for (            Entry postProcessor : postProcessors.retrieveAllEntries()) {
              if ("String_Node_Str".equals(postProcessor.getValue())) {
                enabledPPs.add(postProcessor.getName());
              }
            }
            if (!enabledPPs.isEmpty()) {
              while (resourceList.size() != enabledPPs.size()) {
                resources=resourceComponentPage.getResourceComponent();
                try {
                  Thread.sleep(500);
                }
 catch (                InterruptedException e) {
                  logger.error(getClass().getName() + "String_Node_Str",e);
                }
                for (                ICEResource r : resources.getResources()) {
                  if (enabledPPs.contains(FilenameUtils.removeExtension(r.getName())) && hasValidPostprocessorData(r)) {
                    resourceList.add(r);
                  }
                }
              }
              for (              final ICEResource r : resourceList) {
                PlatformUI.getWorkbench().getDisplay().asyncExec(new Runnable(){
                  @Override public void run(){
                    try {
                      if (!resourceComponentPage.isResourceDisplayed(r)) {
                        MOOSEFormEditor.this.setActivePage(resourceComponentPage.getId());
                        resourceComponentPage.showResource(r);
                      }
                    }
 catch (                    PartInitException e) {
                      logger.error(getClass().getName() + "String_Node_Str",e);
                    }
                  }
                }
);
              }
            }
          }
        }
);
        ppThread.start();
      }
    }
  }
);
  return;
}