Program: 169155
Project: 169155
Buggy source:
private JobSpecification buildSpecification(TaskHandlerCapabilities cap){
  JobSpecification js=new JobSpecificationImpl();
  File script=block.getAllocationProcessor().getScript();
  boolean staging=cap.supportsAnyOf(Key.FULL_FILE_STAGING,Key.SIMPLE_FILE_STAGING,Key.JOB_DIR_STAGING);
  String scriptArg;
  if (staging) {
    scriptArg=script.getName();
    addStagingSpec(js,script,scriptArg);
  }
 else {
    scriptArg=script.getAbsolutePath();
  }
  String os=settings.getAttribute("String_Node_Str");
  boolean isWindows=os != null && os.toLowerCase().contains("String_Node_Str");
  String executable;
  if (isWindows) {
    executable="String_Node_Str";
  }
 else {
    executable="String_Node_Str";
  }
  if ("String_Node_Str".equals(settings.getUseHashBang())) {
    if (!"String_Node_Str".equals(settings.getPerfTraceWorker())) {
      js.setExecutable("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument(settings.getWorkerLoggingDirectory() + "String_Node_Str" + block.getId()+ "String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str" + settings.getPerfTraceWorker());
      js.addArgument(scriptArg);
    }
 else {
      js.setExecutable(scriptArg);
    }
  }
 else {
    if (!"String_Node_Str".equals(settings.getPerfTraceWorker())) {
      js.setExecutable("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument(settings.getWorkerLoggingDirectory() + "String_Node_Str" + block.getId()+ "String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str" + settings.getPerfTraceWorker());
      js.addArgument(executable);
    }
 else {
      js.setExecutable(executable);
    }
    js.addArgument(scriptArg);
  }
  if (!staging) {
    js.setDirectory("String_Node_Str");
  }
 else {
    js.setDirectory(settings.getDirectory());
  }
  js.addArgument(join(settings.getCallbackURIs(),"String_Node_Str"));
  js.addArgument(block.getId());
  if (settings.getWorkerLoggingLevel().equals("String_Node_Str")) {
    js.addArgument("String_Node_Str");
  }
 else {
    String logDir=settings.getWorkerLoggingDirectory();
    if (logDir.equals("String_Node_Str")) {
      js.addArgument(Bootstrap.LOG_DIR.getAbsolutePath());
    }
 else {
      js.addArgument(logDir);
    }
  }
  js.setStdOutputLocation(FileLocation.MEMORY);
  js.setStdErrorLocation(FileLocation.MEMORY);
  return js;
}

Fixed version (ground truth):
private JobSpecification buildSpecification(TaskHandlerCapabilities cap){
  JobSpecification js=new JobSpecificationImpl();
  File script=block.getAllocationProcessor().getScript();
  boolean staging=cap.supportsAnyOf(Key.FULL_FILE_STAGING,Key.SIMPLE_FILE_STAGING,Key.JOB_DIR_STAGING);
  String scriptArg;
  if (staging) {
    scriptArg=script.getName();
    addStagingSpec(js,script,scriptArg);
  }
 else {
    scriptArg=script.getAbsolutePath();
  }
  String os=(String)settings.getAttribute("String_Node_Str");
  boolean isWindows=os != null && os.toLowerCase().contains("String_Node_Str");
  String executable;
  if (isWindows) {
    executable="String_Node_Str";
  }
 else {
    executable="String_Node_Str";
  }
  if ("String_Node_Str".equals(settings.getUseHashBang())) {
    if (!"String_Node_Str".equals(settings.getPerfTraceWorker())) {
      js.setExecutable("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument(settings.getWorkerLoggingDirectory() + "String_Node_Str" + block.getId()+ "String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str" + settings.getPerfTraceWorker());
      js.addArgument(scriptArg);
    }
 else {
      js.setExecutable(scriptArg);
    }
  }
 else {
    if (!"String_Node_Str".equals(settings.getPerfTraceWorker())) {
      js.setExecutable("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument(settings.getWorkerLoggingDirectory() + "String_Node_Str" + block.getId()+ "String_Node_Str");
      js.addArgument("String_Node_Str");
      js.addArgument("String_Node_Str" + settings.getPerfTraceWorker());
      js.addArgument(executable);
    }
 else {
      js.setExecutable(executable);
    }
    js.addArgument(scriptArg);
  }
  if (!staging) {
    js.setDirectory("String_Node_Str");
  }
 else {
    js.setDirectory(settings.getDirectory());
  }
  js.addArgument(join(settings.getCallbackURIs(),"String_Node_Str"));
  js.addArgument(block.getId());
  if (settings.getWorkerLoggingLevel().equals("String_Node_Str")) {
    js.addArgument("String_Node_Str");
  }
 else {
    String logDir=settings.getWorkerLoggingDirectory();
    if (logDir.equals("String_Node_Str")) {
      js.addArgument(Bootstrap.LOG_DIR.getAbsolutePath());
    }
 else {
      js.addArgument(logDir);
    }
  }
  js.setStdOutputLocation(FileLocation.MEMORY);
  js.setStdErrorLocation(FileLocation.MEMORY);
  return js;
}