Program: 125997
Project: 125997
Buggy source:
@SuppressWarnings("String_Node_Str") @Override public boolean performFinish(){
  storeDoNotShowAgainPref();
  InstallNewFeatureJob installNewFeatureJob=new InstallNewFeatureJob(new HashSet<ExtraFeature>(updateWizardModel.selectedExtraFeatures),updateWizardModel.getFeatureRepositories());
  installNewFeatureJob.schedule();
  installNewFeatureJob.addJobChangeListener(new JobChangeAdapter(){
    @Override public void done(    IJobChangeEvent jobEvent){
      MultiStatus results=(MultiStatus)jobEvent.getResult();
      IStatus[] installStatus=results.getChildren();
      boolean hasAnyFailure=false;
      boolean hasAnySuccess=false;
      boolean hasCancel=false;
      for (      IStatus status : installStatus) {
        if (!status.isOK()) {
          if (status.getSeverity() == IStatus.CANCEL) {
            hasCancel=true;
          }
 else {
            hasAnyFailure=true;
          }
        }
 else {
          hasAnySuccess=true;
        }
      }
      if (hasCancel) {
        return;
      }
      String firstPartOfMessage=Messages.getString("String_Node_Str");
      if (hasAnySuccess) {
        if (hasAnyFailure) {
          firstPartOfMessage=Messages.getString("String_Node_Str");
        }
        final String finalMessage=firstPartOfMessage + Messages.getString("String_Node_Str");
        Display.getDefault().syncExec(new Runnable(){
          @Override public void run(){
            boolean isOkToRestart=MessageDialog.openQuestion(getShell(),Messages.getString("String_Node_Str"),finalMessage);
            if (isOkToRestart) {
              PlatformUI.getWorkbench().restart();
            }
          }
        }
);
      }
    }
  }
);
  return true;
}

Fixed version (ground truth):
@SuppressWarnings("String_Node_Str") @Override public boolean performFinish(){
  storeDoNotShowAgainPref();
  InstallNewFeatureJob installNewFeatureJob=new InstallNewFeatureJob(new HashSet<ExtraFeature>(updateWizardModel.selectedExtraFeatures),updateWizardModel.getFeatureRepositories());
  installNewFeatureJob.schedule();
  installNewFeatureJob.addJobChangeListener(new JobChangeAdapter(){
    @Override public void done(    IJobChangeEvent jobEvent){
      MultiStatus results=(MultiStatus)jobEvent.getResult();
      IStatus[] installStatus=results.getChildren();
      boolean hasAnyFailure=false;
      boolean hasAnySuccess=false;
      boolean hasCancel=false;
      for (      IStatus status : installStatus) {
        if (!status.isOK()) {
          if (status.getSeverity() == IStatus.CANCEL) {
            hasCancel=true;
          }
 else {
            hasAnyFailure=true;
          }
        }
 else {
          hasAnySuccess=true;
        }
      }
      if (hasCancel) {
        return;
      }
      String firstPartOfMessage=Messages.getString("String_Node_Str");
      if (hasAnySuccess) {
        if (hasAnyFailure) {
          firstPartOfMessage=Messages.getString("String_Node_Str");
        }
        final String finalMessage=firstPartOfMessage + Messages.getString("String_Node_Str");
        Display.getDefault().syncExec(new Runnable(){
          @Override public void run(){
            IPreferenceStore store=PlatformUI.getPreferenceStore();
            store.putValue("String_Node_Str","String_Node_Str");
            boolean isOkToRestart=MessageDialog.openQuestion(getShell(),Messages.getString("String_Node_Str"),finalMessage);
            if (isOkToRestart) {
              PlatformUI.getWorkbench().restart();
            }
          }
        }
);
      }
    }
  }
);
  return true;
}