Program: 44047
Project: 44047
Buggy source:
private void createIndexFiles() throws OutputFormatterException {
  Map<String,IndexerDataObject> completeMap=getCompleteIndexerMap();
  StringBuffer keyLinks=getKeyLinks(completeMap);
  int i=1;
  for (  Map.Entry<String,IndexerDataObject> entry : completeMap.entrySet()) {
    StringBuffer html=new StringBuffer();
    html.append(HtmlUtils.getStartTags("String_Node_Str" + i,"String_Node_Str"));
    buildHeader(html,false,false,null,"String_Node_Str",true,keyLinks.toString());
    html.append("String_Node_Str" + entry.getKey() + "String_Node_Str");
    List<IndexerBaseDataObject> data=entry.getValue().getDataObjects();
    Collections.sort(data);
    for (    IndexerBaseDataObject dataObj : data) {
      if (!(dataObj instanceof IndexerType)) {
        String baseHref="String_Node_Str" + dataObj.getPackageName();
        String typeDesc="String_Node_Str";
        String baseTitleDesc="String_Node_Str";
        String baseName="String_Node_Str";
        String baseDoc="String_Node_Str";
        String inPageHref=dataObj.getBaseName();
        if (dataObj instanceof IndexerOperationHolder) {
          baseHref=baseHref + SEPARATOR + dataObj.getServiceName()+ Constants.DOT_HTML;
          typeDesc="String_Node_Str";
          baseName=dataObj.getServiceName();
          baseTitleDesc=typeDesc + baseName;
          IndexerOperationHolder opHolder=(IndexerOperationHolder)dataObj;
          if (opHolder.getOperation().getAnnotations() != null && opHolder.getOperation().getAnnotations().getDocumentation() != null) {
            baseDoc=opHolder.getOperation().getAnnotations().getDocumentation();
          }
        }
        if (dataObj instanceof IndexerElementHolder) {
          IndexerElementHolder elemHolder=(IndexerElementHolder)dataObj;
          if (elemHolder.isReqResp()) {
            baseHref=baseHref + SEPARATOR + dataObj.getServiceName()+ Constants.DOT_HTML;
            if (elemHolder.isInput()) {
              typeDesc="String_Node_Str";
            }
 else {
              typeDesc="String_Node_Str";
            }
            baseName=dataObj.getServiceName();
            baseTitleDesc=typeDesc + baseName;
            inPageHref=elemHolder.getOperationHolder().getBaseName();
          }
 else {
            baseHref=baseHref + TYPES + elemHolder.getElement().getContainerComplexType().getName()+ Constants.DOT_HTML;
            if (elemHolder.getElement() instanceof Element) {
              typeDesc="String_Node_Str";
            }
 else {
              typeDesc="String_Node_Str";
            }
            baseName=elemHolder.getElement().getContainerComplexType().getName();
            baseTitleDesc=typeDesc + baseName;
          }
          if (elemHolder.getElement().getAnnotationInfo() != null && elemHolder.getElement().getAnnotationInfo().getDocumentation() != null) {
            baseDoc=elemHolder.getElement().getAnnotationInfo().getDocumentation();
          }
        }
        if (dataObj instanceof IndexerEnumValueElements) {
          IndexerEnumValueElements elemHolder=(IndexerEnumValueElements)dataObj;
          baseHref=baseHref + TYPES + elemHolder.getEnumElem().getType()+ Constants.DOT_HTML;
          typeDesc="String_Node_Str";
          baseName=elemHolder.getEnumElem().getType();
          baseTitleDesc=typeDesc + baseName;
          if (elemHolder.getEnumElem().getAnnotations() != null && elemHolder.getEnumElem().getAnnotations().getDocumentation() != null) {
            baseDoc=elemHolder.getEnumElem().getAnnotations().getDocumentation();
          }
        }
        html.append("String_Node_Str" + baseHref + "String_Node_Str"+ inPageHref+ "String_Node_Str"+ dataObj.getBaseName()+ "String_Node_Str"+ typeDesc+ "String_Node_Str"+ baseHref+ "String_Node_Str"+ baseTitleDesc+ "String_Node_Str"+ baseName+ "String_Node_Str"+ baseDoc+ "String_Node_Str");
      }
    }
    html.append("String_Node_Str");
    addFooter(html,false,false,null,"String_Node_Str",true,keyLinks.toString());
    html.append(HtmlUtils.getEndTags());
    writeFile(html,getCurrentOutputDir() + "String_Node_Str","String_Node_Str" + i + "String_Node_Str");
    i=i + 1;
  }
  createDeprecationFile(completeMap);
}

Fixed version (ground truth):
private void createIndexFiles() throws OutputFormatterException {
  Map<String,IndexerDataObject> completeMap=getCompleteIndexerMap();
  StringBuffer keyLinks=getKeyLinks(completeMap);
  int i=1;
  for (  Map.Entry<String,IndexerDataObject> entry : completeMap.entrySet()) {
    StringBuffer html=new StringBuffer();
    html.append(HtmlUtils.getStartTags("String_Node_Str" + i,"String_Node_Str"));
    Map<String,String> replacementMap=new HashMap<String,String>();
    replacementMap.put("String_Node_Str","String_Node_Str");
    replacementMap.put("String_Node_Str","String_Node_Str");
    replacementMap.put("String_Node_Str",keyLinks.toString());
    buildHeader(html,replacementMap,"String_Node_Str");
    html.append("String_Node_Str" + entry.getKey() + "String_Node_Str");
    List<IndexerBaseDataObject> data=entry.getValue().getDataObjects();
    Collections.sort(data);
    for (    IndexerBaseDataObject dataObj : data) {
      if (!(dataObj instanceof IndexerType)) {
        String baseHref="String_Node_Str" + dataObj.getPackageName();
        String typeDesc="String_Node_Str";
        String baseTitleDesc="String_Node_Str";
        String baseName="String_Node_Str";
        String baseDoc="String_Node_Str";
        String inPageHref=dataObj.getBaseName();
        if (dataObj instanceof IndexerOperationHolder) {
          baseHref=baseHref + SEPARATOR + dataObj.getServiceName()+ Constants.DOT_HTML;
          typeDesc="String_Node_Str";
          baseName=dataObj.getServiceName();
          baseTitleDesc=typeDesc + baseName;
          IndexerOperationHolder opHolder=(IndexerOperationHolder)dataObj;
          if (opHolder.getOperation().getAnnotations() != null && opHolder.getOperation().getAnnotations().getDocumentation() != null) {
            baseDoc=opHolder.getOperation().getAnnotations().getDocumentation();
          }
        }
        if (dataObj instanceof IndexerElementHolder) {
          IndexerElementHolder elemHolder=(IndexerElementHolder)dataObj;
          if (elemHolder.isReqResp()) {
            baseHref=baseHref + SEPARATOR + dataObj.getServiceName()+ Constants.DOT_HTML;
            if (elemHolder.isInput()) {
              typeDesc="String_Node_Str";
            }
 else {
              typeDesc="String_Node_Str";
            }
            baseName=dataObj.getServiceName();
            baseTitleDesc=typeDesc + baseName;
            inPageHref=elemHolder.getOperationHolder().getBaseName();
          }
 else {
            baseHref=baseHref + TYPES + elemHolder.getElement().getContainerComplexType().getName()+ Constants.DOT_HTML;
            if (elemHolder.getElement() instanceof Element) {
              typeDesc="String_Node_Str";
            }
 else {
              typeDesc="String_Node_Str";
            }
            baseName=elemHolder.getElement().getContainerComplexType().getName();
            baseTitleDesc=typeDesc + baseName;
          }
          if (elemHolder.getElement().getAnnotationInfo() != null && elemHolder.getElement().getAnnotationInfo().getDocumentation() != null) {
            baseDoc=elemHolder.getElement().getAnnotationInfo().getDocumentation();
          }
        }
        if (dataObj instanceof IndexerEnumValueElements) {
          IndexerEnumValueElements elemHolder=(IndexerEnumValueElements)dataObj;
          baseHref=baseHref + TYPES + elemHolder.getEnumElem().getType()+ Constants.DOT_HTML;
          typeDesc="String_Node_Str";
          baseName=elemHolder.getEnumElem().getType();
          baseTitleDesc=typeDesc + baseName;
          if (elemHolder.getEnumElem().getAnnotations() != null && elemHolder.getEnumElem().getAnnotations().getDocumentation() != null) {
            baseDoc=elemHolder.getEnumElem().getAnnotations().getDocumentation();
          }
        }
        html.append("String_Node_Str" + baseHref + "String_Node_Str"+ inPageHref+ "String_Node_Str"+ dataObj.getBaseName()+ "String_Node_Str"+ typeDesc+ "String_Node_Str"+ baseHref+ "String_Node_Str"+ baseTitleDesc+ "String_Node_Str"+ baseName+ "String_Node_Str"+ baseDoc+ "String_Node_Str");
      }
    }
    html.append("String_Node_Str");
    addFooter(html,replacementMap,"String_Node_Str");
    html.append(HtmlUtils.getEndTags());
    writeFile(html,getCurrentOutputDir() + "String_Node_Str","String_Node_Str" + i + "String_Node_Str");
    i=i + 1;
  }
  createDeprecationFile(completeMap);
}