Program: 83521
Project: 83521
Buggy source:
/** 
 * Generates all the HTML files into the given directory.
 * @param css If specified, path to CSS will computed by using this resolver
 */
public void generateAll(File outDir,ResourceResolver css) throws IOException {
  if (css == null) {
    css=new AbstractResourceResolver(){
      public String href(      CompilationUnitTree compUnit){
        return getRelativePathToTop(compUnit) + "String_Node_Str";
      }
    }
;
  }
  pss.setLinkResolverFactories(linkResolverFactory);
  for (  CompilationUnitTree cu : pss.getCompilationUnits()) {
    ExpressionTree packageName=cu.getPackageName();
    String pkg=packageName == null ? "String_Node_Str" : packageName.toString().replace('.','/') + '/';
    String name=cu.getSourceFile().getName();
    int idx=name.lastIndexOf('/');
    if (idx >= 0)     name=name.substring(idx + 1);
    idx=name.lastIndexOf('\\');
    if (idx >= 0)     name=name.substring(idx + 1);
    if (name.endsWith("String_Node_Str"))     name=name.substring(0,name.length() - 5);
    System.out.println(pkg + name);
    File out=new File(outDir,pkg + name + "String_Node_Str");
    out.getParentFile().mkdirs();
    FrameHtmlGenerator gen=new FrameHtmlGenerator(pss,cu);
    gen.setCss(css.href(cu));
    gen.write(out);
    File js=new File(outDir,pkg + name + "String_Node_Str");
    generateClassOutlineJs(cu,new PrintWriter(js));
  }
  generateIndex(new PrintWriter(open(outDir,"String_Node_Str")));
  generatePackageListJs(new PrintWriter(openDefault(outDir,"String_Node_Str")));
  generatePackageList(new PrintWriter(openDefault(outDir,"String_Node_Str")));
  for (  PackageElement p : pss.getPackageElement()) {
    File dir=new File(outDir,getPackagePath(p));
    dir.mkdirs();
    generateClassListJs(p,new PrintWriter(openDefault(dir,"String_Node_Str")));
  }
  generateProjectUsageJs(new PrintWriter(openDefault(outDir,"String_Node_Str")));
  IOUtil.copy("String_Node_Str",new File(outDir,"String_Node_Str"));
  IOUtil.copy("String_Node_Str",new File(outDir,"String_Node_Str"));
  IOUtil.copy("String_Node_Str",new File(outDir,"String_Node_Str"));
  for (  String res : RESOURCES) {
    File o=new File(outDir,res);
    o.getParentFile().mkdirs();
    InputStream in=getClass().getResourceAsStream(res);
    if (in == null)     throw new Error("String_Node_Str" + res + "String_Node_Str");
    IOUtil.copy(in,o);
  }
}

Fixed version (ground truth):
/** 
 * Generates all the HTML files into the given directory.
 * @param css If specified, path to CSS will computed by using this resolver
 */
public void generateAll(File outDir,ResourceResolver css) throws IOException {
  if (css == null) {
    css=new AbstractResourceResolver(){
      public String href(      CompilationUnitTree compUnit){
        return getRelativePathToTop(compUnit) + "String_Node_Str";
      }
    }
;
  }
  pss.setLinkResolverFactories(linkResolverFactory);
  for (  CompilationUnitTree cu : pss.getCompilationUnits()) {
    ExpressionTree packageName=cu.getPackageName();
    String pkg=packageName == null ? "String_Node_Str" : packageName.toString().replace('.','/') + '/';
    String name=TreeUtil.getPrimaryTypeName(cu);
    System.out.println(pkg + name);
    File out=new File(outDir,pkg + name + "String_Node_Str");
    out.getParentFile().mkdirs();
    FrameHtmlGenerator gen=new FrameHtmlGenerator(pss,cu);
    gen.setCss(css.href(cu));
    gen.write(out);
    File js=new File(outDir,pkg + name + "String_Node_Str");
    generateClassOutlineJs(cu,new PrintWriter(js));
  }
  generateIndex(new PrintWriter(open(outDir,"String_Node_Str")));
  generatePackageListJs(new PrintWriter(openDefault(outDir,"String_Node_Str")));
  generatePackageList(new PrintWriter(openDefault(outDir,"String_Node_Str")));
  for (  PackageElement p : pss.getPackageElement()) {
    File dir=new File(outDir,getPackagePath(p));
    dir.mkdirs();
    generateClassListJs(p,new PrintWriter(openDefault(dir,"String_Node_Str")));
  }
  generateProjectUsageJs(new PrintWriter(openDefault(outDir,"String_Node_Str")));
  IOUtil.copy("String_Node_Str",new File(outDir,"String_Node_Str"));
  IOUtil.copy("String_Node_Str",new File(outDir,"String_Node_Str"));
  IOUtil.copy("String_Node_Str",new File(outDir,"String_Node_Str"));
  for (  String res : RESOURCES) {
    File o=new File(outDir,res);
    o.getParentFile().mkdirs();
    InputStream in=getClass().getResourceAsStream(res);
    if (in == null)     throw new Error("String_Node_Str" + res + "String_Node_Str");
    IOUtil.copy(in,o);
  }
}