Program: 82789
Project: 82789
Buggy source:
public static void main(String[] args) throws Exception {
  Options options=getOptions();
  CommandLineParser parser=new GnuParser();
  try {
    CommandLine line=parser.parse(options,args);
    if (line.hasOption("String_Node_Str")) {
      usage(options);
      return;
    }
    if (line.hasOption("String_Node_Str")) {
      Message.init(new DefaultMessageImpl(Message.MSG_DEBUG));
    }
 else     if (line.hasOption("String_Node_Str")) {
      Message.init(new DefaultMessageImpl(Message.MSG_VERBOSE));
    }
 else     if (line.hasOption("String_Node_Str")) {
      Message.init(new DefaultMessageImpl(Message.MSG_WARN));
    }
 else     if (line.hasOption("String_Node_Str")) {
      Message.init(new DefaultMessageImpl(Message.MSG_ERR));
    }
 else {
      Message.init(new DefaultMessageImpl(Message.MSG_INFO));
    }
    boolean validate=line.hasOption("String_Node_Str") ? false : true;
    Ivy ivy=new Ivy();
    ivy.addAllVariables(System.getProperties());
    configureURLHandler(line.getOptionValue("String_Node_Str",null),line.getOptionValue("String_Node_Str",null),line.getOptionValue("String_Node_Str",null),line.getOptionValue("String_Node_Str",null));
    String confPath=line.getOptionValue("String_Node_Str","String_Node_Str");
    if ("String_Node_Str".equals(confPath)) {
      ivy.configure(Ivy.class.getResource("String_Node_Str"));
    }
 else {
      File conffile=new File(confPath);
      if (!conffile.exists()) {
        error(options,"String_Node_Str" + conffile);
      }
 else       if (conffile.isDirectory()) {
        error(options,"String_Node_Str" + conffile);
      }
      ivy.configure(conffile);
    }
    File cache=new File(ivy.substitute(line.getOptionValue("String_Node_Str",ivy.getDefaultCache().getAbsolutePath())));
    if (!cache.exists()) {
      cache.mkdirs();
    }
 else     if (!cache.isDirectory()) {
      error(options,cache + "String_Node_Str");
    }
    String[] confs;
    if (line.hasOption("String_Node_Str")) {
      confs=line.getOptionValues("String_Node_Str");
    }
 else {
      confs=new String[]{"String_Node_Str"};
    }
    File ivyfile;
    if (line.hasOption("String_Node_Str")) {
      String[] dep=line.getOptionValues("String_Node_Str");
      if (dep.length != 3) {
        error(options,"String_Node_Str");
      }
      ivyfile=File.createTempFile("String_Node_Str","String_Node_Str");
      ivyfile.deleteOnExit();
      DefaultModuleDescriptor md=DefaultModuleDescriptor.newDefaultInstance(ModuleRevisionId.newInstance(dep[0],"String_Node_Str","String_Node_Str"));
      DefaultDependencyDescriptor dd=new DefaultDependencyDescriptor(md,ModuleRevisionId.newInstance(dep[0],dep[1],dep[2]),false,false,true);
      for (int i=0; i < confs.length; i++) {
        dd.addDependencyConfiguration("String_Node_Str",confs[i]);
      }
      md.addDependency(dd);
      XmlModuleDescriptorWriter.write(md,ivyfile);
      confs=new String[]{"String_Node_Str"};
    }
 else {
      ivyfile=new File(ivy.substitute(line.getOptionValue("String_Node_Str","String_Node_Str")));
      if (!ivyfile.exists()) {
        error(options,"String_Node_Str" + ivyfile);
      }
 else       if (ivyfile.isDirectory()) {
        error(options,"String_Node_Str" + ivyfile);
      }
    }
    Date date=new Date();
    ResolveReport report=ivy.resolve(ivyfile.toURL(),null,confs,cache,date,validate);
    ModuleDescriptor md=report.getModuleDescriptor();
    if (confs.length == 1 && "String_Node_Str".equals(confs[0])) {
      confs=md.getConfigurationsNames();
    }
    if (line.hasOption("String_Node_Str")) {
      String retrievePattern=ivy.substitute(line.getOptionValue("String_Node_Str"));
      if (retrievePattern.indexOf("String_Node_Str") == -1) {
        retrievePattern=retrievePattern + "String_Node_Str";
      }
      ivy.retrieve(md.getModuleRevisionId().getModuleId(),confs,cache,retrievePattern);
    }
    if (line.hasOption("String_Node_Str")) {
      outputCachePath(ivy,cache,md,confs,line.getOptionValue("String_Node_Str","String_Node_Str"));
    }
    if (line.hasOption("String_Node_Str")) {
      ivy.deliver(md.getResolvedModuleRevisionId(),ivy.substitute(line.getOptionValue("String_Node_Str")),cache,ivy.substitute(line.getOptionValue("String_Node_Str","String_Node_Str")),ivy.substitute(line.getOptionValue("String_Node_Str","String_Node_Str")),date,new DefaultPublishingDRResolver(),validate);
      if (line.hasOption("String_Node_Str")) {
        ivy.publish(md.getResolvedModuleRevisionId(),ivy.substitute(line.getOptionValue("String_Node_Str")),cache,ivy.substitute(line.getOptionValue("String_Node_Str","String_Node_Str")),line.getOptionValue("String_Node_Str"),ivy.substitute(line.getOptionValue("String_Node_Str","String_Node_Str")),validate);
      }
    }
  }
 catch (  ParseException exp) {
    System.err.println("String_Node_Str" + exp.getMessage());
    usage(options);
  }
}

Fixed version (ground truth):
public static void main(String[] args) throws Exception {
  Options options=getOptions();
  CommandLineParser parser=new GnuParser();
  try {
    CommandLine line=parser.parse(options,args);
    if (line.hasOption("String_Node_Str")) {
      usage(options);
      return;
    }
    if (line.hasOption("String_Node_Str")) {
      Message.init(new DefaultMessageImpl(Message.MSG_DEBUG));
    }
 else     if (line.hasOption("String_Node_Str")) {
      Message.init(new DefaultMessageImpl(Message.MSG_VERBOSE));
    }
 else     if (line.hasOption("String_Node_Str")) {
      Message.init(new DefaultMessageImpl(Message.MSG_WARN));
    }
 else     if (line.hasOption("String_Node_Str")) {
      Message.init(new DefaultMessageImpl(Message.MSG_ERR));
    }
 else {
      Message.init(new DefaultMessageImpl(Message.MSG_INFO));
    }
    boolean validate=line.hasOption("String_Node_Str") ? false : true;
    Ivy ivy=new Ivy();
    ivy.addAllVariables(System.getProperties());
    if (line.hasOption("String_Node_Str")) {
      ivy.setVariable("String_Node_Str","String_Node_Str");
    }
    configureURLHandler(line.getOptionValue("String_Node_Str",null),line.getOptionValue("String_Node_Str",null),line.getOptionValue("String_Node_Str",null),line.getOptionValue("String_Node_Str",null));
    String confPath=line.getOptionValue("String_Node_Str","String_Node_Str");
    if ("String_Node_Str".equals(confPath)) {
      ivy.configureDefault();
    }
 else {
      File conffile=new File(confPath);
      if (!conffile.exists()) {
        error(options,"String_Node_Str" + conffile);
      }
 else       if (conffile.isDirectory()) {
        error(options,"String_Node_Str" + conffile);
      }
      ivy.configure(conffile);
    }
    File cache=new File(ivy.substitute(line.getOptionValue("String_Node_Str",ivy.getDefaultCache().getAbsolutePath())));
    if (!cache.exists()) {
      cache.mkdirs();
    }
 else     if (!cache.isDirectory()) {
      error(options,cache + "String_Node_Str");
    }
    String[] confs;
    if (line.hasOption("String_Node_Str")) {
      confs=line.getOptionValues("String_Node_Str");
    }
 else {
      confs=new String[]{"String_Node_Str"};
    }
    File ivyfile;
    if (line.hasOption("String_Node_Str")) {
      String[] dep=line.getOptionValues("String_Node_Str");
      if (dep.length != 3) {
        error(options,"String_Node_Str");
      }
      ivyfile=File.createTempFile("String_Node_Str","String_Node_Str");
      ivyfile.deleteOnExit();
      DefaultModuleDescriptor md=DefaultModuleDescriptor.newDefaultInstance(ModuleRevisionId.newInstance(dep[0],"String_Node_Str","String_Node_Str"));
      DefaultDependencyDescriptor dd=new DefaultDependencyDescriptor(md,ModuleRevisionId.newInstance(dep[0],dep[1],dep[2]),false,false,true);
      for (int i=0; i < confs.length; i++) {
        dd.addDependencyConfiguration("String_Node_Str",confs[i]);
      }
      md.addDependency(dd);
      XmlModuleDescriptorWriter.write(md,ivyfile);
      confs=new String[]{"String_Node_Str"};
    }
 else {
      ivyfile=new File(ivy.substitute(line.getOptionValue("String_Node_Str","String_Node_Str")));
      if (!ivyfile.exists()) {
        error(options,"String_Node_Str" + ivyfile);
      }
 else       if (ivyfile.isDirectory()) {
        error(options,"String_Node_Str" + ivyfile);
      }
    }
    Date date=new Date();
    ResolveReport report=ivy.resolve(ivyfile.toURL(),null,confs,cache,date,validate);
    ModuleDescriptor md=report.getModuleDescriptor();
    if (confs.length == 1 && "String_Node_Str".equals(confs[0])) {
      confs=md.getConfigurationsNames();
    }
    if (line.hasOption("String_Node_Str")) {
      String retrievePattern=ivy.substitute(line.getOptionValue("String_Node_Str"));
      if (retrievePattern.indexOf("String_Node_Str") == -1) {
        retrievePattern=retrievePattern + "String_Node_Str";
      }
      ivy.retrieve(md.getModuleRevisionId().getModuleId(),confs,cache,retrievePattern);
    }
    if (line.hasOption("String_Node_Str")) {
      outputCachePath(ivy,cache,md,confs,line.getOptionValue("String_Node_Str","String_Node_Str"));
    }
    if (line.hasOption("String_Node_Str")) {
      ivy.deliver(md.getResolvedModuleRevisionId(),ivy.substitute(line.getOptionValue("String_Node_Str")),cache,ivy.substitute(line.getOptionValue("String_Node_Str","String_Node_Str")),ivy.substitute(line.getOptionValue("String_Node_Str","String_Node_Str")),date,new DefaultPublishingDRResolver(),validate);
      if (line.hasOption("String_Node_Str")) {
        ivy.publish(md.getResolvedModuleRevisionId(),ivy.substitute(line.getOptionValue("String_Node_Str")),cache,ivy.substitute(line.getOptionValue("String_Node_Str","String_Node_Str")),line.getOptionValue("String_Node_Str"),ivy.substitute(line.getOptionValue("String_Node_Str","String_Node_Str")),validate);
      }
    }
  }
 catch (  ParseException exp) {
    System.err.println("String_Node_Str" + exp.getMessage());
    usage(options);
  }
}