Program: 121297
Project: 121297
Buggy source:
/** 
 * Added by Marvin Wang on Nov 7, 2012.
 * @param missingJarsForRoutines
 * @param missingJarsForProcess
 * @param missingJars
 * @throws BusinessException
 */
private static void handleMissingJarsForProcess(Set<String> missingJarsForRoutines,final Set<String> missingJarsForProcess,String missingJars) throws BusinessException {
  final StringBuffer sb=new StringBuffer("String_Node_Str");
  if (missingJarsForProcess.size() > 0) {
    sb.append(Messages.getString("String_Node_Str"));
    for (    String missingJar : missingJarsForProcess) {
      sb.append(missingJar);
      sb.append("String_Node_Str");
    }
    if (missingJarsForRoutines.size() > 0) {
      sb.append("String_Node_Str");
      sb.append(Messages.getString("String_Node_Str"));
      sb.append("String_Node_Str");
      sb.append(Messages.getString("String_Node_Str"));
      sb.append("String_Node_Str");
      for (      String missingJar : missingJarsForRoutines) {
        sb.append(missingJar);
        sb.append("String_Node_Str");
      }
      subForMsg(sb.toString());
    }
 else {
      subForMsg(sb.toString());
    }
    if (!CommonsPlugin.isHeadless()) {
      Display display=DisplayUtils.getDisplay();
      if (display != null) {
        display.syncExec(new Runnable(){
          @Override public void run(){
            MessageDialog.openWarning(Display.getDefault().getActiveShell(),Messages.getString("String_Node_Str"),subForMsg(sb.toString()));
          }
        }
);
      }
    }
    throw new BusinessException(missingJars);
  }
 else {
    if (missingJarsForRoutines.size() > 0) {
      sb.append(Messages.getString("String_Node_Str"));
      for (      String missingJar : missingJarsForRoutines) {
        sb.append(missingJar);
        sb.append("String_Node_Str");
      }
      CommonExceptionHandler.warn(subForMsg(sb.toString()));
    }
  }
}

Fixed version (ground truth):
/** 
 * Added by Marvin Wang on Nov 7, 2012.
 * @param missingJarsForRoutines
 * @param missingJarsForProcess
 * @param missingJars
 * @throws BusinessException
 */
private static void handleMissingJarsForProcess(Set<String> missingJarsForRoutines,final Set<String> missingJarsForProcess,String missingJars) throws BusinessException {
  final StringBuffer sb=new StringBuffer("String_Node_Str");
  if (missingJarsForProcess.size() > 0) {
    sb.append(Messages.getString("String_Node_Str"));
    for (    String missingJar : missingJarsForProcess) {
      sb.append(missingJar);
      sb.append("String_Node_Str");
    }
    if (missingJarsForRoutines.size() > 0) {
      sb.append("String_Node_Str");
      sb.append(Messages.getString("String_Node_Str"));
      sb.append("String_Node_Str");
      sb.append(Messages.getString("String_Node_Str"));
      sb.append("String_Node_Str");
      for (      String missingJar : missingJarsForRoutines) {
        sb.append(missingJar);
        sb.append("String_Node_Str");
      }
      subForMsg(sb.toString());
    }
 else {
      subForMsg(sb.toString());
    }
    if (!CommonsPlugin.isHeadless()) {
      Display display=DisplayUtils.getDisplay();
      if (display != null) {
        display.syncExec(new Runnable(){
          @Override public void run(){
            MessageDialog dialog=new MessageDialog(Display.getDefault().getActiveShell(),Messages.getString("String_Node_Str"),null,subForMsg(sb.toString()),4,new String[]{IDialogConstants.OK_LABEL},0){
              @Override protected void setShellStyle(              int newShellStyle){
                super.setShellStyle(getShellStyle() | SWT.NONE);
              }
            }
;
            dialog.open();
          }
        }
);
      }
    }
    throw new BusinessException(missingJars);
  }
 else {
    if (missingJarsForRoutines.size() > 0) {
      sb.append(Messages.getString("String_Node_Str"));
      for (      String missingJar : missingJarsForRoutines) {
        sb.append(missingJar);
        sb.append("String_Node_Str");
      }
      CommonExceptionHandler.warn(subForMsg(sb.toString()));
    }
  }
}