Program: 82666
Project: 82666
Buggy source:
public void startElement(String uri,String localName,String qName,Attributes attributes) throws SAXException {
  if ("String_Node_Str".equals(qName)) {
    organisation=attributes.getValue("String_Node_Str");
    module=attributes.getValue("String_Node_Str");
  }
 else   if ("String_Node_Str".equals(qName)) {
    revisionArtifacts=new ArrayList();
    branch=attributes.getValue("String_Node_Str");
    revision=attributes.getValue("String_Node_Str");
    isDefault=Boolean.valueOf(attributes.getValue("String_Node_Str")).booleanValue();
    String pos=attributes.getValue("String_Node_Str");
    position=pos == null ? getMaxPos() + 1 : Integer.valueOf(pos).intValue();
    if (attributes.getValue("String_Node_Str") != null || attributes.getValue("String_Node_Str") != null) {
      skip=true;
    }
 else {
      revisionsMap.put(new Integer(position),revisionArtifacts);
      mrid=ModuleRevisionId.newInstance(organisation,module,branch,revision,ExtendableItemHelper.getExtraAttributes(attributes,"String_Node_Str"));
      mrids.add(mrid);
      if (isDefault) {
        defaultMrids.add(mrid);
      }
 else {
        Artifact metadataArtifact=DefaultArtifact.newIvyArtifact(mrid,pubdate);
        MetadataArtifactDownloadReport madr=new MetadataArtifactDownloadReport(metadataArtifact);
        metadataReports.put(mrid,madr);
        realMrids.add(mrid);
      }
      try {
        String pubDateAttr=attributes.getValue("String_Node_Str");
        if (pubDateAttr != null) {
          pubdate=Ivy.DATE_FORMAT.parse(pubDateAttr);
        }
        skip=false;
      }
 catch (      ParseException e) {
        throw new IllegalArgumentException("String_Node_Str" + organisation + "String_Node_Str"+ module+ "String_Node_Str"+ revision+ "String_Node_Str"+ attributes.getValue("String_Node_Str"));
      }
    }
  }
 else   if ("String_Node_Str".equals(qName)) {
    if (skip) {
      return;
    }
    MetadataArtifactDownloadReport madr=(MetadataArtifactDownloadReport)metadataReports.get(mrid);
    if (madr != null) {
      madr.setDownloadStatus(DownloadStatus.fromString(attributes.getValue("String_Node_Str")));
      madr.setDownloadDetails(attributes.getValue("String_Node_Str"));
      madr.setSize(Long.parseLong(attributes.getValue("String_Node_Str")));
      madr.setDownloadTimeMillis(Long.parseLong(attributes.getValue("String_Node_Str")));
      madr.setSearched(parseBoolean(attributes.getValue("String_Node_Str")));
      if (attributes.getValue("String_Node_Str") != null) {
        madr.setLocalFile(new File(attributes.getValue("String_Node_Str")));
      }
      if (attributes.getValue("String_Node_Str") != null) {
        madr.setOriginalLocalFile(new File(attributes.getValue("String_Node_Str")));
      }
      if (attributes.getValue("String_Node_Str") != null) {
        if (ArtifactOrigin.isUnknown(attributes.getValue("String_Node_Str"))) {
          madr.setArtifactOrigin(ArtifactOrigin.unkwnown(madr.getArtifact()));
        }
 else {
          madr.setArtifactOrigin(new ArtifactOrigin(madr.getArtifact(),parseBoolean(attributes.getValue("String_Node_Str")),attributes.getValue("String_Node_Str")));
        }
      }
    }
  }
 else   if ("String_Node_Str".equals(qName)) {
    if (skip) {
      return;
    }
    String status=attributes.getValue("String_Node_Str");
    String artifactName=attributes.getValue("String_Node_Str");
    String type=attributes.getValue("String_Node_Str");
    String ext=attributes.getValue("String_Node_Str");
    Artifact artifact=new DefaultArtifact(mrid,pubdate,artifactName,type,ext,ExtendableItemHelper.getExtraAttributes(attributes,"String_Node_Str"));
    ArtifactDownloadReport aReport=new ArtifactDownloadReport(artifact);
    aReport.setDownloadStatus(DownloadStatus.fromString(status));
    aReport.setDownloadDetails(attributes.getValue("String_Node_Str"));
    aReport.setSize(Long.parseLong(attributes.getValue("String_Node_Str")));
    aReport.setDownloadTimeMillis(Long.parseLong(attributes.getValue("String_Node_Str")));
    if (attributes.getValue("String_Node_Str") != null) {
      aReport.setLocalFile(new File(attributes.getValue("String_Node_Str")));
    }
    revisionArtifacts.add(aReport);
  }
 else   if ("String_Node_Str".equals(qName)) {
    if (skip) {
      return;
    }
    ArtifactDownloadReport aReport=(ArtifactDownloadReport)revisionArtifacts.get(revisionArtifacts.size() - 1);
    if (ArtifactOrigin.isUnknown(attributes.getValue("String_Node_Str"))) {
      aReport.setArtifactOrigin(ArtifactOrigin.unkwnown(aReport.getArtifact()));
    }
 else {
      aReport.setArtifactOrigin(new ArtifactOrigin(aReport.getArtifact(),parseBoolean(attributes.getValue("String_Node_Str")),attributes.getValue("String_Node_Str")));
    }
  }
 else   if ("String_Node_Str".equals(qName)) {
    String organisation=attributes.getValue("String_Node_Str");
    String name=attributes.getValue("String_Node_Str");
    String branch=attributes.getValue("String_Node_Str");
    String revision=attributes.getValue("String_Node_Str");
    Map extraAttributes=new HashMap();
    for (int i=0; i < attributes.getLength(); i++) {
      String attName=attributes.getQName(i);
      if (attName.startsWith("String_Node_Str")) {
        String extraAttrName=attName.substring("String_Node_Str".length());
        String extraAttrValue=attributes.getValue(i);
        extraAttributes.put(extraAttrName,extraAttrValue);
      }
    }
    mRevisionId=ModuleRevisionId.newInstance(organisation,name,branch,revision,extraAttributes);
  }
}

Fixed version (ground truth):
public void startElement(String uri,String localName,String qName,Attributes attributes) throws SAXException {
  if ("String_Node_Str".equals(qName)) {
    organisation=attributes.getValue("String_Node_Str");
    module=attributes.getValue("String_Node_Str");
  }
 else   if ("String_Node_Str".equals(qName)) {
    revisionArtifacts=new ArrayList();
    branch=attributes.getValue("String_Node_Str");
    revision=attributes.getValue("String_Node_Str");
    isDefault=Boolean.valueOf(attributes.getValue("String_Node_Str")).booleanValue();
    String pos=attributes.getValue("String_Node_Str");
    position=pos == null ? getMaxPos() + 1 : Integer.valueOf(pos).intValue();
    if (attributes.getValue("String_Node_Str") != null) {
      hasError=true;
      skip=true;
    }
 else     if (attributes.getValue("String_Node_Str") != null) {
      skip=true;
    }
 else {
      revisionsMap.put(new Integer(position),revisionArtifacts);
      mrid=ModuleRevisionId.newInstance(organisation,module,branch,revision,ExtendableItemHelper.getExtraAttributes(attributes,"String_Node_Str"));
      mrids.add(mrid);
      if (isDefault) {
        defaultMrids.add(mrid);
      }
 else {
        Artifact metadataArtifact=DefaultArtifact.newIvyArtifact(mrid,pubdate);
        MetadataArtifactDownloadReport madr=new MetadataArtifactDownloadReport(metadataArtifact);
        metadataReports.put(mrid,madr);
        realMrids.add(mrid);
      }
      try {
        String pubDateAttr=attributes.getValue("String_Node_Str");
        if (pubDateAttr != null) {
          pubdate=Ivy.DATE_FORMAT.parse(pubDateAttr);
        }
        skip=false;
      }
 catch (      ParseException e) {
        throw new IllegalArgumentException("String_Node_Str" + organisation + "String_Node_Str"+ module+ "String_Node_Str"+ revision+ "String_Node_Str"+ attributes.getValue("String_Node_Str"));
      }
    }
  }
 else   if ("String_Node_Str".equals(qName)) {
    if (skip) {
      return;
    }
    MetadataArtifactDownloadReport madr=(MetadataArtifactDownloadReport)metadataReports.get(mrid);
    if (madr != null) {
      madr.setDownloadStatus(DownloadStatus.fromString(attributes.getValue("String_Node_Str")));
      madr.setDownloadDetails(attributes.getValue("String_Node_Str"));
      madr.setSize(Long.parseLong(attributes.getValue("String_Node_Str")));
      madr.setDownloadTimeMillis(Long.parseLong(attributes.getValue("String_Node_Str")));
      madr.setSearched(parseBoolean(attributes.getValue("String_Node_Str")));
      if (attributes.getValue("String_Node_Str") != null) {
        madr.setLocalFile(new File(attributes.getValue("String_Node_Str")));
      }
      if (attributes.getValue("String_Node_Str") != null) {
        madr.setOriginalLocalFile(new File(attributes.getValue("String_Node_Str")));
      }
      if (attributes.getValue("String_Node_Str") != null) {
        if (ArtifactOrigin.isUnknown(attributes.getValue("String_Node_Str"))) {
          madr.setArtifactOrigin(ArtifactOrigin.unkwnown(madr.getArtifact()));
        }
 else {
          madr.setArtifactOrigin(new ArtifactOrigin(madr.getArtifact(),parseBoolean(attributes.getValue("String_Node_Str")),attributes.getValue("String_Node_Str")));
        }
      }
    }
  }
 else   if ("String_Node_Str".equals(qName)) {
    if (skip) {
      return;
    }
    String status=attributes.getValue("String_Node_Str");
    String artifactName=attributes.getValue("String_Node_Str");
    String type=attributes.getValue("String_Node_Str");
    String ext=attributes.getValue("String_Node_Str");
    Artifact artifact=new DefaultArtifact(mrid,pubdate,artifactName,type,ext,ExtendableItemHelper.getExtraAttributes(attributes,"String_Node_Str"));
    ArtifactDownloadReport aReport=new ArtifactDownloadReport(artifact);
    aReport.setDownloadStatus(DownloadStatus.fromString(status));
    aReport.setDownloadDetails(attributes.getValue("String_Node_Str"));
    aReport.setSize(Long.parseLong(attributes.getValue("String_Node_Str")));
    aReport.setDownloadTimeMillis(Long.parseLong(attributes.getValue("String_Node_Str")));
    if (attributes.getValue("String_Node_Str") != null) {
      aReport.setLocalFile(new File(attributes.getValue("String_Node_Str")));
    }
    revisionArtifacts.add(aReport);
  }
 else   if ("String_Node_Str".equals(qName)) {
    if (skip) {
      return;
    }
    ArtifactDownloadReport aReport=(ArtifactDownloadReport)revisionArtifacts.get(revisionArtifacts.size() - 1);
    if (ArtifactOrigin.isUnknown(attributes.getValue("String_Node_Str"))) {
      aReport.setArtifactOrigin(ArtifactOrigin.unkwnown(aReport.getArtifact()));
    }
 else {
      aReport.setArtifactOrigin(new ArtifactOrigin(aReport.getArtifact(),parseBoolean(attributes.getValue("String_Node_Str")),attributes.getValue("String_Node_Str")));
    }
  }
 else   if ("String_Node_Str".equals(qName)) {
    String organisation=attributes.getValue("String_Node_Str");
    String name=attributes.getValue("String_Node_Str");
    String branch=attributes.getValue("String_Node_Str");
    String revision=attributes.getValue("String_Node_Str");
    Map extraAttributes=new HashMap();
    for (int i=0; i < attributes.getLength(); i++) {
      String attName=attributes.getQName(i);
      if (attName.startsWith("String_Node_Str")) {
        String extraAttrName=attName.substring("String_Node_Str".length());
        String extraAttrValue=attributes.getValue(i);
        extraAttributes.put(extraAttrName,extraAttrValue);
      }
    }
    mRevisionId=ModuleRevisionId.newInstance(organisation,name,branch,revision,extraAttributes);
  }
}