Program: 168098
Project: 168098
Buggy source:
private void addButtonsToToolBar(){
  IToolBarManager mgr=form.getToolBarManager();
  mgr.add(new Action(){
    @Override public ImageDescriptor getImageDescriptor(){
      return (HeirarchicalClusterViewImageRegistry.getImageIconFactory().getImageDescriptor(IMAGE_LRUN_OBJ));
    }
    @Override public String getToolTipText(){
      return "String_Node_Str";
    }
    @Override public void run(){
      if (!canProceedCluster()) {
        return;
      }
      final DateFormat df=new SimpleDateFormat("String_Node_Str");
      final Date dateObj=new Date();
      ConsoleView.writeInConsoleHeader("String_Node_Str" + (df.format(dateObj)));
      final boolean isPreprocess=preprocessEnabled.getSelection();
      final String outputPath=layoutOutputData.getOutputLabel().getText();
      TacitUtil tacitHelper=new TacitUtil();
      final List<Object> selectedFiles=layoutData.getSelectedFiles();
      tacitHelper.writeSummaryFile(outputPath);
      final boolean isSaveImage=saveImage.getSelection();
      performCluster=new Job("String_Node_Str"){
        private Preprocess preprocessTask;
        private String dirPath;
        @Override protected IStatus run(        IProgressMonitor monitor){
          TacitFormComposite.setConsoleViewInFocus();
          TacitFormComposite.updateStatusMessage(getViewSite(),null,null,form);
          monitor.beginTask("String_Node_Str",100);
          preprocessTask=null;
          dirPath="String_Node_Str";
          List<File> inputFiles=new ArrayList<File>();
          Preprocessor ppObj=null;
          try {
            ppObj=new Preprocessor("String_Node_Str",isPreprocess);
            List<String> inFiles;
            inFiles=ppObj.processData("String_Node_Str",selectedFiles);
            for (            String f : inFiles) {
              inputFiles.add(new File(f));
            }
          }
 catch (          IOException e) {
            e.printStackTrace();
          }
catch (          Exception e) {
            e.printStackTrace();
          }
          long startTime=System.currentTimeMillis();
          boolean isSuccessful=HierarchicalClusterAnalysis.runClustering(inputFiles,outputPath,isSaveImage,new SubProgressMonitor(monitor,50),dateObj);
          if (!isSuccessful)           return Status.CANCEL_STATUS;
          Display.getDefault().asyncExec(new Runnable(){
            @Override public void run(){
              if (isPreprocess && preprocessTask.doCleanUp()) {
                preprocessTask.clean();
                ConsoleView.printlInConsoleln("String_Node_Str" + dirPath);
              }
            }
          }
);
          System.out.println("String_Node_Str" + (System.currentTimeMillis() - startTime) + "String_Node_Str");
          if (monitor.isCanceled()) {
            throw new OperationCanceledException();
          }
          ppObj.clean();
          monitor.done();
          return Status.OK_STATUS;
        }
      }
;
      performCluster.setUser(true);
      if (canProceedCluster()) {
        performCluster.schedule();
        performCluster.addJobChangeListener(new JobChangeAdapter(){
          @Override public void done(          IJobChangeEvent event){
            if (!event.getResult().isOK()) {
              TacitFormComposite.writeConsoleHeaderBegining("String_Node_Str");
              ConsoleView.printlInConsoleln("String_Node_Str");
              ConsoleView.printlInConsoleln("String_Node_Str");
            }
 else {
              TacitFormComposite.updateStatusMessage(getViewSite(),"String_Node_Str",IStatus.OK,form);
              ConsoleView.writeInConsoleHeader("String_Node_Str" + (df.format(new Date())));
            }
          }
        }
);
      }
 else {
        TacitFormComposite.updateStatusMessage(getViewSite(),"String_Node_Str",IStatus.ERROR,form);
      }
    }
  }
);
  Action helpAction=new Action(){
    @Override public ImageDescriptor getImageDescriptor(){
      return (HeirarchicalClusterViewImageRegistry.getImageIconFactory().getImageDescriptor(IMAGE_HELP_CO));
    }
    @Override public String getToolTipText(){
      return "String_Node_Str";
    }
    @Override public void run(){
      PlatformUI.getWorkbench().getHelpSystem().displayHelp("String_Node_Str");
    }
  }
;
  mgr.add(helpAction);
  PlatformUI.getWorkbench().getHelpSystem().setHelp(helpAction,"String_Node_Str");
  PlatformUI.getWorkbench().getHelpSystem().setHelp(form,"String_Node_Str");
  form.getToolBarManager().update(true);
}

Fixed version (ground truth):
private void addButtonsToToolBar(){
  IToolBarManager mgr=form.getToolBarManager();
  mgr.add(new Action(){
    @Override public ImageDescriptor getImageDescriptor(){
      return (HeirarchicalClusterViewImageRegistry.getImageIconFactory().getImageDescriptor(IMAGE_LRUN_OBJ));
    }
    @Override public String getToolTipText(){
      return "String_Node_Str";
    }
    @Override public void run(){
      if (!canProceedCluster()) {
        return;
      }
      final DateFormat df=new SimpleDateFormat("String_Node_Str");
      final Date dateObj=new Date();
      ConsoleView.writeInConsoleHeader("String_Node_Str" + (df.format(dateObj)));
      final boolean isPreprocess=preprocessEnabled.getSelection();
      final String outputPath=layoutOutputData.getOutputLabel().getText();
      TacitUtil tacitHelper=new TacitUtil();
      final List<Object> selectedFiles=layoutData.getSelectedFiles();
      tacitHelper.writeSummaryFile(outputPath);
      final boolean isSaveImage=saveImage.getSelection();
      performCluster=new Job("String_Node_Str"){
        private Preprocess preprocessTask;
        private String dirPath;
        @Override protected IStatus run(        IProgressMonitor monitor){
          TacitFormComposite.setConsoleViewInFocus();
          TacitFormComposite.updateStatusMessage(getViewSite(),null,null,form);
          monitor.beginTask("String_Node_Str",100);
          preprocessTask=null;
          dirPath="String_Node_Str";
          List<File> inputFiles=new ArrayList<File>();
          Preprocessor ppObj=null;
          try {
            ppObj=new Preprocessor("String_Node_Str",isPreprocess);
            List<String> inFiles;
            inFiles=ppObj.processData("String_Node_Str",selectedFiles);
            for (            String f : inFiles) {
              inputFiles.add(new File(f));
            }
          }
 catch (          IOException e) {
            e.printStackTrace();
            return Status.CANCEL_STATUS;
          }
catch (          Exception e) {
            e.printStackTrace();
            return Status.CANCEL_STATUS;
          }
          long startTime=System.currentTimeMillis();
          boolean isSuccessful=HierarchicalClusterAnalysis.runClustering(inputFiles,outputPath,isSaveImage,new SubProgressMonitor(monitor,50),dateObj);
          if (!isSuccessful)           return Status.CANCEL_STATUS;
          Display.getDefault().asyncExec(new Runnable(){
            @Override public void run(){
              if (isPreprocess && preprocessTask.doCleanUp()) {
                preprocessTask.clean();
                ConsoleView.printlInConsoleln("String_Node_Str" + dirPath);
              }
            }
          }
);
          System.out.println("String_Node_Str" + (System.currentTimeMillis() - startTime) + "String_Node_Str");
          if (monitor.isCanceled()) {
            throw new OperationCanceledException();
          }
          ppObj.clean();
          monitor.done();
          return Status.OK_STATUS;
        }
      }
;
      performCluster.setUser(true);
      if (canProceedCluster()) {
        performCluster.schedule();
        performCluster.addJobChangeListener(new JobChangeAdapter(){
          @Override public void done(          IJobChangeEvent event){
            if (!event.getResult().isOK()) {
              TacitFormComposite.writeConsoleHeaderBegining("String_Node_Str");
              ConsoleView.printlInConsoleln("String_Node_Str");
              ConsoleView.printlInConsoleln("String_Node_Str");
            }
 else {
              TacitFormComposite.updateStatusMessage(getViewSite(),"String_Node_Str",IStatus.OK,form);
              ConsoleView.writeInConsoleHeader("String_Node_Str" + (df.format(new Date())));
            }
          }
        }
);
      }
 else {
        TacitFormComposite.updateStatusMessage(getViewSite(),"String_Node_Str",IStatus.ERROR,form);
      }
    }
  }
);
  Action helpAction=new Action(){
    @Override public ImageDescriptor getImageDescriptor(){
      return (HeirarchicalClusterViewImageRegistry.getImageIconFactory().getImageDescriptor(IMAGE_HELP_CO));
    }
    @Override public String getToolTipText(){
      return "String_Node_Str";
    }
    @Override public void run(){
      PlatformUI.getWorkbench().getHelpSystem().displayHelp("String_Node_Str");
    }
  }
;
  mgr.add(helpAction);
  PlatformUI.getWorkbench().getHelpSystem().setHelp(helpAction,"String_Node_Str");
  PlatformUI.getWorkbench().getHelpSystem().setHelp(form,"String_Node_Str");
  form.getToolBarManager().update(true);
}