Program: 167794
Project: 167794
Buggy source:
void readDomainElement1_4(final XMLExtendedStreamReader reader,final ModelNode address,final Namespace expectedNs,final List<ModelNode> list) throws XMLStreamException {
  parseNamespaces(reader,address,list);
  readDomainElementAttributes_1_3(reader,expectedNs,address,list);
  Element element=nextElement(reader,expectedNs);
  if (element == Element.EXTENSIONS) {
    extensionXml.parseExtensions(reader,address,expectedNs,list);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.SYSTEM_PROPERTIES) {
    parseSystemProperties(reader,address,expectedNs,list,false);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.PATHS) {
    parsePaths(reader,address,expectedNs,list,false);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.PROFILES) {
    parseProfiles(reader,address,expectedNs,list);
    element=nextElement(reader,expectedNs);
  }
  final Set<String> interfaceNames=new HashSet<String>();
  if (element == Element.INTERFACES) {
    parseInterfaces(reader,interfaceNames,address,expectedNs,list,false);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.SOCKET_BINDING_GROUPS) {
    parseDomainSocketBindingGroups(reader,address,expectedNs,list,interfaceNames);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.DEPLOYMENTS) {
    parseDeployments(reader,address,expectedNs,list,EnumSet.of(Attribute.NAME,Attribute.RUNTIME_NAME),EnumSet.of(Element.CONTENT,Element.FS_ARCHIVE,Element.FS_EXPLODED));
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.DEPLOYMENT_OVERLAYS) {
    parseDeploymentOverlays(reader,expectedNs,new ModelNode(),list);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.SERVER_GROUPS) {
    parseServerGroups(reader,address,expectedNs,list);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.MANAGEMENT_CLIENT_CONTENT) {
    parseManagementClientContent(reader,address,expectedNs,list);
    element=nextElement(reader,expectedNs);
  }
 else   if (element == null) {
    initializeRolloutPlans(address,list);
  }
 else {
    throw unexpectedElement(reader);
  }
}

Fixed version (ground truth):
void readDomainElement1_4(final XMLExtendedStreamReader reader,final ModelNode address,final Namespace expectedNs,final List<ModelNode> list) throws XMLStreamException {
  parseNamespaces(reader,address,list);
  readDomainElementAttributes_1_3(reader,expectedNs,address,list);
  Element element=nextElement(reader,expectedNs);
  if (element == Element.EXTENSIONS) {
    extensionXml.parseExtensions(reader,address,expectedNs,list);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.SYSTEM_PROPERTIES) {
    parseSystemProperties(reader,address,expectedNs,list,false);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.PATHS) {
    parsePaths(reader,address,expectedNs,list,false);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.PROFILES) {
    parseProfiles(reader,address,expectedNs,list);
    element=nextElement(reader,expectedNs);
  }
  final Set<String> interfaceNames=new HashSet<String>();
  if (element == Element.INTERFACES) {
    parseInterfaces(reader,interfaceNames,address,expectedNs,list,false);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.SOCKET_BINDING_GROUPS) {
    parseDomainSocketBindingGroups(reader,address,expectedNs,list,interfaceNames);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.DEPLOYMENTS) {
    parseDeployments(reader,address,expectedNs,list,EnumSet.of(Attribute.NAME,Attribute.RUNTIME_NAME),EnumSet.of(Element.CONTENT,Element.FS_ARCHIVE,Element.FS_EXPLODED));
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.DEPLOYMENT_OVERLAYS) {
    parseDeploymentOverlays(reader,expectedNs,new ModelNode(),list,true,false);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.SERVER_GROUPS) {
    parseServerGroups(reader,address,expectedNs,list);
    element=nextElement(reader,expectedNs);
  }
  if (element == Element.MANAGEMENT_CLIENT_CONTENT) {
    parseManagementClientContent(reader,address,expectedNs,list);
    element=nextElement(reader,expectedNs);
  }
 else   if (element == null) {
    initializeRolloutPlans(address,list);
  }
 else {
    throw unexpectedElement(reader);
  }
}