Program: 83447
Project: 83447
Buggy source:
private static void computeInstallationPath(){
  try {
    String override=System.getProperty("String_Node_Str");
    if (override == null) {
      String partialPath=Utility.class.getName().replace('.','/').concat("String_Node_Str");
      URL url=Utility.class.getClassLoader().getResource(partialPath);
      if (url != null && url.getProtocol() == "String_Node_Str") {
        String path=url.toString();
        String jarPath=path.substring(path.indexOf("String_Node_Str"),path.lastIndexOf('!'));
        File devJarFile=new File(URI.create(jarPath));
        if (!devJarFile.isFile()) {
          throw new IOException("String_Node_Str" + devJarFile.getCanonicalPath() + "String_Node_Str");
        }
        sDevJarName=devJarFile.getName();
        String dirPath=jarPath.substring(0,jarPath.lastIndexOf('/') + 1);
        File installDirFile=new File(URI.create(dirPath));
        if (!installDirFile.isDirectory()) {
          throw new IOException("String_Node_Str" + installDirFile.getCanonicalPath() + "String_Node_Str");
        }
        sInstallPath=installDirFile.getCanonicalPath().replace(File.separatorChar,'/');
      }
 else {
        throw new IOException("String_Node_Str");
      }
    }
 else {
      override=override.replace('\\','/');
      int pos=override.lastIndexOf('/');
      if (pos < 0) {
        sInstallPath="String_Node_Str";
        sDevJarName=override;
      }
 else {
        sInstallPath=override.substring(0,pos);
        sDevJarName=override.substring(pos + 1);
      }
    }
  }
 catch (  IOException e) {
    throw new RuntimeException("String_Node_Str",e);
  }
}

Fixed version (ground truth):
private static void computeInstallationPath(){
  try {
    String override=System.getProperty("String_Node_Str");
    if (override == null) {
      String partialPath=Utility.class.getName().replace('.','/').concat("String_Node_Str");
      URL url=Utility.class.getClassLoader().getResource(partialPath);
      if (url != null && "String_Node_Str".equals(url.getProtocol())) {
        String path=url.toString();
        String jarPath=path.substring(path.indexOf("String_Node_Str"),path.lastIndexOf('!'));
        File devJarFile=new File(URI.create(jarPath));
        if (!devJarFile.isFile()) {
          throw new IOException("String_Node_Str" + devJarFile.getCanonicalPath() + "String_Node_Str");
        }
        sDevJarName=devJarFile.getName();
        String dirPath=jarPath.substring(0,jarPath.lastIndexOf('/') + 1);
        File installDirFile=new File(URI.create(dirPath));
        if (!installDirFile.isDirectory()) {
          throw new IOException("String_Node_Str" + installDirFile.getCanonicalPath() + "String_Node_Str");
        }
        sInstallPath=installDirFile.getCanonicalPath().replace(File.separatorChar,'/');
      }
 else {
        throw new IOException("String_Node_Str");
      }
    }
 else {
      override=override.replace('\\','/');
      int pos=override.lastIndexOf('/');
      if (pos < 0) {
        sInstallPath="String_Node_Str";
        sDevJarName=override;
      }
 else {
        sInstallPath=override.substring(0,pos);
        sDevJarName=override.substring(pos + 1);
      }
    }
  }
 catch (  IOException e) {
    throw new RuntimeException("String_Node_Str",e);
  }
}