Program: 141857
Project: 141857
Buggy source:
private void buildParameterFromElements(String partElement,ParameterInfo parameterRoot){
  parametersName.add(parameterRoot.getName());
  Iterator<XmlSchemaElement> elementsItr=allXmlSchemaElement.iterator();
  if (partElement != null) {
    while (elementsItr.hasNext()) {
      XmlSchemaElement xmlSchemaElement=elementsItr.next();
      if (partElement.equals(xmlSchemaElement.getName())) {
        parameterRoot.setNameSpace(xmlSchemaElement.getQName().getNamespaceURI());
        if (xmlSchemaElement.getSchemaType() != null) {
          if (xmlSchemaElement.getSchemaType() instanceof XmlSchemaComplexType) {
            XmlSchemaComplexType xmlElementComplexType=(XmlSchemaComplexType)xmlSchemaElement.getSchemaType();
            XmlSchemaParticle xmlSchemaParticle=xmlElementComplexType.getParticle();
            if (xmlSchemaParticle instanceof XmlSchemaGroupParticle) {
              Collection<XmlSchemaObjectBase> xmlSchemaObjectCollection=getXmlSchemaObjectsFromXmlSchemaGroupParticle((XmlSchemaGroupParticle)xmlSchemaParticle);
              if (xmlSchemaObjectCollection != null) {
                buildParameterFromCollection(xmlSchemaObjectCollection,parameterRoot);
              }
            }
 else             if (xmlSchemaElement.getSchemaTypeName() != null) {
              String paraTypeName=xmlSchemaElement.getSchemaTypeName().getLocalPart();
              if (paraTypeName != null) {
                parameterRoot.setType(paraTypeName);
                buildParameterFromTypes(paraTypeName,parameterRoot);
              }
            }
          }
 else           if (xmlSchemaElement.getSchemaType() instanceof XmlSchemaSimpleType) {
            XmlSchemaSimpleType xmlSchemaSimpleType=(XmlSchemaSimpleType)xmlSchemaElement.getSchemaType();
            String typeName=xmlSchemaSimpleType.getName();
            parameterRoot.setType(typeName);
          }
        }
 else         if (xmlSchemaElement.getSchemaTypeName() != null) {
          String paraTypeName=xmlSchemaElement.getSchemaTypeName().getLocalPart();
          if (paraTypeName != null) {
            parameterRoot.setType(paraTypeName);
            buildParameterFromTypes(paraTypeName,parameterRoot);
          }
        }
      }
    }
  }
}

Fixed version (ground truth):
private void buildParameterFromElements(String partElement,ParameterInfo parameterRoot){
  String parameterName=parameterRoot.getName();
  if (parameterName == null) {
    return;
  }
  parametersName.add(parameterName);
  Iterator<XmlSchemaElement> elementsItr=allXmlSchemaElement.iterator();
  if (partElement != null) {
    while (elementsItr.hasNext()) {
      XmlSchemaElement xmlSchemaElement=elementsItr.next();
      if (partElement.equals(xmlSchemaElement.getName())) {
        parameterRoot.setNameSpace(xmlSchemaElement.getQName().getNamespaceURI());
        if (xmlSchemaElement.getSchemaType() != null) {
          if (xmlSchemaElement.getSchemaType() instanceof XmlSchemaComplexType) {
            XmlSchemaComplexType xmlElementComplexType=(XmlSchemaComplexType)xmlSchemaElement.getSchemaType();
            XmlSchemaParticle xmlSchemaParticle=xmlElementComplexType.getParticle();
            if (xmlSchemaParticle instanceof XmlSchemaGroupParticle) {
              Collection<XmlSchemaObjectBase> xmlSchemaObjectCollection=getXmlSchemaObjectsFromXmlSchemaGroupParticle((XmlSchemaGroupParticle)xmlSchemaParticle);
              if (xmlSchemaObjectCollection != null) {
                buildParameterFromCollection(xmlSchemaObjectCollection,parameterRoot);
              }
            }
 else             if (xmlSchemaElement.getSchemaTypeName() != null) {
              String paraTypeName=xmlSchemaElement.getSchemaTypeName().getLocalPart();
              if (paraTypeName != null) {
                parameterRoot.setType(paraTypeName);
                buildParameterFromTypes(paraTypeName,parameterRoot);
              }
            }
          }
 else           if (xmlSchemaElement.getSchemaType() instanceof XmlSchemaSimpleType) {
            XmlSchemaSimpleType xmlSchemaSimpleType=(XmlSchemaSimpleType)xmlSchemaElement.getSchemaType();
            String typeName=xmlSchemaSimpleType.getName();
            parameterRoot.setType(typeName);
          }
        }
 else         if (xmlSchemaElement.getSchemaTypeName() != null) {
          String paraTypeName=xmlSchemaElement.getSchemaTypeName().getLocalPart();
          if (paraTypeName != null) {
            parameterRoot.setType(paraTypeName);
            buildParameterFromTypes(paraTypeName,parameterRoot);
          }
        }
      }
    }
  }
}