Program: 179673
Project: 179673
Buggy source:
public static void main(String... args){
  if (args != null && args.length > 0) {
    int length=args.length;
    if (length != 1 && length != 2 && length != 3 && length != 4) {
      usage();
      System.exit(-1);
    }
 else {
      String path="String_Node_Str";
      String run=null;
      if (length == 1) {
        run=args[0];
      }
      if (length == 2) {
        SimpleModuleLogger.enableTrace(true);
        if (!args[1].equals("String_Node_Str")) {
          usage();
          System.exit(-1);
        }
        run=args[0];
      }
      if (length == 3) {
        if (args[0].equals("String_Node_Str")) {
          path=args[1];
          run=args[2];
        }
 else {
          if (!args[1].equals("String_Node_Str")) {
            usage();
            System.exit(-1);
          }
          run=args[0];
          path=args[2];
        }
      }
      if (length == 4) {
        SimpleModuleLogger.enableTrace(true);
        if (!args[3].equals("String_Node_Str")) {
          usage();
          System.exit(-1);
        }
        if (args[0].equals("String_Node_Str")) {
          path=args[1];
          run=args[2];
        }
 else {
          if (!args[1].equals("String_Node_Str")) {
            usage();
            System.exit(-1);
          }
          run=args[0];
          path=args[2];
        }
      }
      File root=new File(path);
      SimpleModuleLogger.info("String_Node_Str",root.getAbsolutePath());
      long start=System.currentTimeMillis();
      Collection<Configuration> configs=Modules.scanForModules(URLUtils.url(path));
      SimpleModuleLogger.info("String_Node_Str",configs.size(),String.valueOf((System.currentTimeMillis() - start)));
      Modules modules=new Modules();
      modules.addModules(configs);
      modules.startModule(run);
    }
  }
}

Fixed version (ground truth):
public static void main(String... args){
  if (args != null && args.length > 0) {
    int length=args.length;
    if (length != 1 && length != 2 && length != 3 && length != 4) {
      usage();
      System.exit(-1);
    }
 else {
      String path="String_Node_Str";
      String run=null;
      if (length == 1) {
        run=args[0];
      }
      if (length == 2) {
        SimpleModuleLogger.enableTrace(true);
        if (!args[1].equals("String_Node_Str")) {
          usage();
          System.exit(-1);
        }
        run=args[0];
      }
      if (length == 3) {
        if (args[0].equals("String_Node_Str")) {
          path=args[1];
          run=args[2];
        }
 else {
          if (!args[1].equals("String_Node_Str")) {
            usage();
            System.exit(-1);
          }
          run=args[0];
          path=args[2];
        }
      }
      if (length == 4) {
        SimpleModuleLogger.enableTrace(true);
        if (!args[3].equals("String_Node_Str")) {
          usage();
          System.exit(-1);
        }
        if (args[0].equals("String_Node_Str")) {
          path=args[1];
          run=args[2];
        }
 else {
          if (!args[1].equals("String_Node_Str")) {
            usage();
            System.exit(-1);
          }
          run=args[0];
          path=args[2];
        }
      }
      File root=new File(path);
      SimpleModuleLogger.info("String_Node_Str",root.getAbsolutePath());
      long start=System.currentTimeMillis();
      Collection<Configuration> configs=Modules.scanForModules(URLUtils.url(path));
      SimpleModuleLogger.info("String_Node_Str",configs.size(),String.valueOf((System.currentTimeMillis() - start)));
      Modules modules=new Modules();
      modules.addModules(configs);
      modules.startModule(run);
    }
  }
 else {
    usage();
    System.exit(-1);
  }
}