Program: 94364
Project: 94364
Buggy source:
/** 
 * {@inheritDoc}
 * @see org.apache.hadoop.util.Tool#run(String[])
 */
@Override public int run(String[] args) throws IOException {
  if (commands == null) {
    loadCommands();
  }
  Options options=createOptions();
  if (args.length == 0) {
    general_usage(options);
    return -1;
  }
  String cmdStr=args[0];
  if (cmdStr.equals("String_Node_Str") || cmdStr.equals("String_Node_Str")) {
    general_usage(options);
    return 0;
  }
  CommandSpi spi=commands.get(cmdStr);
  Command cmd;
  if (spi == null) {
    System.out.println("String_Node_Str" + cmdStr);
    System.out.println();
    general_usage(options);
    return -1;
  }
 else {
    try {
      cmd=spi.getCommandClass().newInstance();
    }
 catch (    InstantiationException|IllegalAccessException e) {
      log.error("String_Node_Str",e);
      return -1;
    }
    cmd.addOptions(options);
  }
  CommandLine line;
  try {
    CommandLineParser parser=new ExtendedGnuParser(true);
    line=parser.parse(options,Arrays.copyOfRange(args,1,args.length));
  }
 catch (  ParseException e) {
    if (args.length > 1) {
      for (      String help : args) {
        if (help.equals("String_Node_Str") || help.equals("String_Node_Str")) {
          specific_usage(cmd,options);
        }
      }
      return 0;
    }
    System.out.println(e.getMessage());
    specific_usage(cmd,options);
    return -1;
  }
  if (line.hasOption("String_Node_Str")) {
    specific_usage(cmd,options);
    return 0;
  }
 else {
    if (line.hasOption("String_Node_Str")) {
      MrGeoProperties.getInstance().setProperty(MrGeoConstants.MRGEO_AUTOPERSISTANCE,"String_Node_Str");
    }
    if (line.hasOption("String_Node_Str")) {
      LoggingUtils.setDefaultLogLevel(LoggingUtils.DEBUG);
    }
 else     if (line.hasOption("String_Node_Str")) {
      LoggingUtils.setDefaultLogLevel(LoggingUtils.INFO);
    }
 else {
      LoggingUtils.setDefaultLogLevel(LoggingUtils.ERROR);
      HadoopUtils.adjustLogging();
    }
  }
  if (line.hasOption("String_Node_Str")) {
    System.out.println("String_Node_Str");
    HadoopUtils.setupLocalRunner(getConf());
  }
  if (line.hasOption("String_Node_Str")) {
    float mult=Float.parseFloat(line.getOptionValue("String_Node_Str"));
    MrGeoProperties.getInstance().setProperty(MrGeoConstants.MRGEO_FORCE_MEMORYINTENSIVE,"String_Node_Str");
    MrGeoProperties.getInstance().setProperty(MrGeoConstants.MRGEO_MEMORYINTENSIVE_MULTIPLIER,Float.toString(mult));
  }
  if (line.hasOption("String_Node_Str")) {
    MrGeoProperties.getInstance().setProperty(MrGeoConstants.MRGEO_MAX_PROCESSING_MEM,line.getOptionValue("String_Node_Str"));
  }
  if (line.hasOption("String_Node_Str")) {
    MrGeoProperties.getInstance().setProperty(MrGeoConstants.MRGEO_SHUFFLE_FRACTION,line.getOptionValue("String_Node_Str"));
  }
  if (!commands.containsKey(cmdStr)) {
    int ret=0;
    if (!line.hasOption("String_Node_Str")) {
      System.out.println("String_Node_Str" + cmdStr);
      System.out.println();
      ret=-1;
    }
    general_usage(options);
    return ret;
  }
  ProviderProperties providerProperties=new ProviderProperties();
  try {
    return cmd.run(line,getConf(),providerProperties);
  }
 catch (  ParseException e) {
    System.out.println(e.getMessage());
    new HelpFormatter().printHelp(cmd.getUsage(),options);
    return -1;
  }
}

Fixed version (ground truth):
/** 
 * {@inheritDoc}
 * @see org.apache.hadoop.util.Tool#run(String[])
 */
@Override public int run(String[] args) throws IOException {
  if (commands == null) {
    loadCommands();
  }
  Options options=createOptions();
  if (args.length == 0) {
    general_usage(options);
    return -1;
  }
  String cmdStr=args[0];
  if (cmdStr.equals("String_Node_Str") || cmdStr.equals("String_Node_Str")) {
    general_usage(options);
    return 0;
  }
  CommandSpi spi=commands.get(cmdStr);
  Command cmd;
  if (spi == null) {
    System.out.println("String_Node_Str" + cmdStr);
    System.out.println();
    general_usage(options);
    return -1;
  }
 else {
    try {
      cmd=spi.getCommandClass().newInstance();
    }
 catch (    InstantiationException|IllegalAccessException e) {
      log.error("String_Node_Str",e);
      return -1;
    }
    cmd.addOptions(options);
  }
  CommandLine line;
  try {
    CommandLineParser parser=new ExtendedGnuParser(true);
    line=parser.parse(options,Arrays.copyOfRange(args,1,args.length));
  }
 catch (  ParseException e) {
    if (args.length > 1) {
      for (      String help : args) {
        if (help.equals("String_Node_Str") || help.equals("String_Node_Str")) {
          specific_usage(cmd,options);
          return 0;
        }
      }
    }
    System.out.println(e.getMessage());
    specific_usage(cmd,options);
    return -1;
  }
  if (line.hasOption("String_Node_Str")) {
    specific_usage(cmd,options);
    return 0;
  }
 else {
    if (line.hasOption("String_Node_Str")) {
      MrGeoProperties.getInstance().setProperty(MrGeoConstants.MRGEO_AUTOPERSISTANCE,"String_Node_Str");
    }
    if (line.hasOption("String_Node_Str")) {
      LoggingUtils.setDefaultLogLevel(LoggingUtils.DEBUG);
    }
 else     if (line.hasOption("String_Node_Str")) {
      LoggingUtils.setDefaultLogLevel(LoggingUtils.INFO);
    }
 else {
      LoggingUtils.setDefaultLogLevel(LoggingUtils.ERROR);
      HadoopUtils.adjustLogging();
    }
  }
  if (line.hasOption("String_Node_Str")) {
    System.out.println("String_Node_Str");
    HadoopUtils.setupLocalRunner(getConf());
  }
  if (line.hasOption("String_Node_Str")) {
    float mult=Float.parseFloat(line.getOptionValue("String_Node_Str"));
    MrGeoProperties.getInstance().setProperty(MrGeoConstants.MRGEO_FORCE_MEMORYINTENSIVE,"String_Node_Str");
    MrGeoProperties.getInstance().setProperty(MrGeoConstants.MRGEO_MEMORYINTENSIVE_MULTIPLIER,Float.toString(mult));
  }
  if (line.hasOption("String_Node_Str")) {
    MrGeoProperties.getInstance().setProperty(MrGeoConstants.MRGEO_MAX_PROCESSING_MEM,line.getOptionValue("String_Node_Str"));
  }
  if (line.hasOption("String_Node_Str")) {
    MrGeoProperties.getInstance().setProperty(MrGeoConstants.MRGEO_SHUFFLE_FRACTION,line.getOptionValue("String_Node_Str"));
  }
  if (!commands.containsKey(cmdStr)) {
    int ret=0;
    if (!line.hasOption("String_Node_Str")) {
      System.out.println("String_Node_Str" + cmdStr);
      System.out.println();
      ret=-1;
    }
    general_usage(options);
    return ret;
  }
  ProviderProperties providerProperties=new ProviderProperties();
  try {
    return cmd.run(line,getConf(),providerProperties);
  }
 catch (  ParseException e) {
    System.out.println(e.getMessage());
    new HelpFormatter().printHelp(cmd.getUsage(),options);
    return -1;
  }
}