Program: 28336
Project: 28336
Buggy source:
/** 
 */
@Override protected int executeCommand() throws CommandException {
  logger.finer(toString());
  if (sync.equals("String_Node_Str")) {
    logger.info(Strings.get("String_Node_Str"));
  }
 else {
    if (!synchronizeInstance()) {
      File domainXml=new File(new File(instanceDir,"String_Node_Str"),"String_Node_Str");
      if (!domainXml.exists()) {
        logger.info(Strings.get("String_Node_Str"));
        return ERROR;
      }
      logger.info(Strings.get("String_Node_Str"));
    }
  }
  try {
    createLauncher();
    final String mpv=getMasterPassword();
    helper=new StartServerHelper(logger,programOpts.isTerse(),getServerDirs(),launcher,mpv,debug);
    if (!helper.prepareForLaunch())     return ERROR;
    if (dry_run) {
      logger.fine(Strings.get("String_Node_Str"));
      List<String> cmd=getLauncher().getCommandLine();
      StringBuilder sb=new StringBuilder();
      for (      String s : cmd) {
        sb.append(s);
        sb.append('\n');
      }
      logger.info(sb.toString());
      return SUCCESS;
    }
    getLauncher().launch();
    if (verbose || watchdog) {
      while (true) {
        int returnValue=getLauncher().getExitValue();
switch (returnValue) {
case RESTART_NORMAL:
          logger.info(Strings.get("String_Node_Str"));
        break;
case RESTART_DEBUG_ON:
      logger.info(Strings.get("String_Node_Str","String_Node_Str"));
    getInfo().setDebug(true);
  break;
case RESTART_DEBUG_OFF:
logger.info(Strings.get("String_Node_Str","String_Node_Str"));
getInfo().setDebug(false);
break;
default :
return returnValue;
}
if (env.debug()) System.setProperty(CLIConstants.WALL_CLOCK_START_PROP,"String_Node_Str" + System.currentTimeMillis());
getLauncher().relaunch();
}
}
 else {
helper.waitForServer();
helper.report();
return SUCCESS;
}
}
 catch (GFLauncherException gfle) {
throw new CommandException(gfle.getMessage());
}
catch (MiniXmlParserException me) {
throw new CommandException(me);
}
}

Fixed version (ground truth):
/** 
 */
@Override protected int executeCommand() throws CommandException {
  if (logger.isLoggable(Level.FINER))   logger.finer(toString());
  if (sync.equals("String_Node_Str")) {
    logger.info(Strings.get("String_Node_Str"));
  }
 else {
    if (!synchronizeInstance()) {
      File domainXml=new File(new File(instanceDir,"String_Node_Str"),"String_Node_Str");
      if (!domainXml.exists()) {
        logger.info(Strings.get("String_Node_Str"));
        return ERROR;
      }
      logger.info(Strings.get("String_Node_Str"));
    }
  }
  try {
    createLauncher();
    final String mpv=getMasterPassword();
    helper=new StartServerHelper(logger,programOpts.isTerse(),getServerDirs(),launcher,mpv,debug);
    if (!helper.prepareForLaunch())     return ERROR;
    if (dry_run) {
      if (logger.isLoggable(Level.FINE))       logger.fine(Strings.get("String_Node_Str"));
      List<String> cmd=getLauncher().getCommandLine();
      StringBuilder sb=new StringBuilder();
      for (      String s : cmd) {
        sb.append(s);
        sb.append('\n');
      }
      logger.info(sb.toString());
      return SUCCESS;
    }
    getLauncher().launch();
    if (verbose || watchdog) {
      while (true) {
        int returnValue=getLauncher().getExitValue();
switch (returnValue) {
case RESTART_NORMAL:
          logger.info(Strings.get("String_Node_Str"));
        break;
case RESTART_DEBUG_ON:
      logger.info(Strings.get("String_Node_Str","String_Node_Str"));
    getInfo().setDebug(true);
  break;
case RESTART_DEBUG_OFF:
logger.info(Strings.get("String_Node_Str","String_Node_Str"));
getInfo().setDebug(false);
break;
default :
return returnValue;
}
if (env.debug()) System.setProperty(CLIConstants.WALL_CLOCK_START_PROP,"String_Node_Str" + System.currentTimeMillis());
getLauncher().relaunch();
}
}
 else {
helper.waitForServer();
helper.report();
return SUCCESS;
}
}
 catch (GFLauncherException gfle) {
throw new CommandException(gfle.getMessage());
}
catch (MiniXmlParserException me) {
throw new CommandException(me);
}
}