Program: 151759
Project: 151759
Buggy source:
@Override public void contextInitialized(ServletContextEvent pServletContextEvent){
  logger.info("String_Node_Str");
  ServletContext servletContext=pServletContextEvent.getServletContext();
  try {
    String shutdownPref=servletContext.getInitParameter("String_Node_Str");
    if (shutdownPref != null) {
      performShutdown=Boolean.valueOf(shutdownPref).booleanValue();
    }
    String shutdownWaitPref=servletContext.getInitParameter("String_Node_Str");
    if (shutdownPref != null) {
      waitOnShutdown=Boolean.valueOf(shutdownWaitPref).booleanValue();
    }
    int threadPoolSize=0;
    String ThreadPoolSizeString=servletContext.getInitParameter("String_Node_Str");
    try {
      if (ThreadPoolSizeString != null && ThreadPoolSizeString.trim().length() > 0) {
        threadPoolSize=Integer.parseInt(ThreadPoolSizeString);
      }
    }
 catch (    Exception e) {
      logger.error("String_Node_Str" + ThreadPoolSizeString + "String_Node_Str");
      threadPoolSize=10;
    }
    SundialJobScheduler.createScheduler(10);
    SundialJobScheduler.setServletContext(servletContext);
    String startOnLoad=servletContext.getInitParameter("String_Node_Str");
    int startDelay=0;
    String startDelayS=servletContext.getInitParameter("String_Node_Str");
    try {
      if (startDelayS != null && startDelayS.trim().length() > 0) {
        startDelay=Integer.parseInt(startDelayS);
      }
    }
 catch (    Exception e) {
      logger.error("String_Node_Str" + startDelayS + "String_Node_Str");
      startDelay=5;
    }
    if (startOnLoad == null || (Boolean.valueOf(startOnLoad).booleanValue())) {
      if (startDelay <= 0) {
        SundialJobScheduler.getScheduler().start();
        logger.info("String_Node_Str");
      }
 else {
        SundialJobScheduler.getScheduler().startDelayed(startDelay);
        logger.info("String_Node_Str" + startDelay + "String_Node_Str");
      }
    }
 else {
      logger.info("String_Node_Str");
    }
    String globalLockOnLoadString=servletContext.getInitParameter("String_Node_Str");
    boolean globalLockOnLoad=false;
    if (globalLockOnLoadString != null) {
      globalLockOnLoad=Boolean.valueOf(globalLockOnLoadString).booleanValue();
      if (globalLockOnLoad) {
        SundialJobScheduler.lockScheduler();
      }
    }
  }
 catch (  Exception e) {
    logger.error("String_Node_Str",e);
  }
}

Fixed version (ground truth):
@Override public void contextInitialized(ServletContextEvent pServletContextEvent){
  logger.info("String_Node_Str");
  ServletContext servletContext=pServletContextEvent.getServletContext();
  try {
    String shutdownPrefString=servletContext.getInitParameter("String_Node_Str");
    if (shutdownPrefString != null) {
      performShutdown=Boolean.valueOf(shutdownPrefString).booleanValue();
    }
    String shutdownWaitPrefString=servletContext.getInitParameter("String_Node_Str");
    if (shutdownPrefString != null) {
      waitOnShutdown=Boolean.valueOf(shutdownWaitPrefString).booleanValue();
    }
    int threadPoolSize=10;
    String ThreadPoolSizeString=servletContext.getInitParameter("String_Node_Str");
    try {
      if (ThreadPoolSizeString != null && ThreadPoolSizeString.trim().length() > 0) {
        threadPoolSize=Integer.parseInt(ThreadPoolSizeString);
      }
    }
 catch (    Exception e) {
      logger.error("String_Node_Str" + ThreadPoolSizeString + "String_Node_Str");
    }
    SundialJobScheduler.createScheduler(threadPoolSize);
    SundialJobScheduler.setServletContext(servletContext);
    String startOnLoadString=servletContext.getInitParameter("String_Node_Str");
    int startDelay=0;
    String startDelayString=servletContext.getInitParameter("String_Node_Str");
    try {
      if (startDelayString != null && startDelayString.trim().length() > 0) {
        startDelay=Integer.parseInt(startDelayString);
      }
    }
 catch (    Exception e) {
      logger.error("String_Node_Str" + startDelayString + "String_Node_Str");
      startDelay=5;
    }
    if (startOnLoadString == null || (Boolean.valueOf(startOnLoadString).booleanValue())) {
      if (startDelay <= 0) {
        SundialJobScheduler.getScheduler().start();
        logger.info("String_Node_Str");
      }
 else {
        SundialJobScheduler.getScheduler().startDelayed(startDelay);
        logger.info("String_Node_Str" + startDelay + "String_Node_Str");
      }
    }
 else {
      logger.info("String_Node_Str");
    }
    String globalLockOnLoadString=servletContext.getInitParameter("String_Node_Str");
    boolean globalLockOnLoad=false;
    if (globalLockOnLoadString != null) {
      globalLockOnLoad=Boolean.valueOf(globalLockOnLoadString).booleanValue();
      if (globalLockOnLoad) {
        SundialJobScheduler.lockScheduler();
        logger.info("String_Node_Str");
      }
    }
  }
 catch (  Exception e) {
    logger.error("String_Node_Str",e);
  }
}