Program: 50340
Project: 50340
Buggy source:
private Collection<Address> getPossibleMembers(){
  Join join=config.getNetworkConfig().getJoin();
  final List<String> lsJoinMembers=join.getTcpIpConfig().getMembers();
  final Set<Address> setPossibleAddresses=new HashSet<Address>();
  for (  final String lsJoinMember : lsJoinMembers) {
    String host=lsJoinMember;
    int port=config.getPort();
    final int indexColon=host.indexOf(':');
    if (indexColon >= 0) {
      port=Integer.parseInt(host.substring(indexColon + 1));
      host=host.substring(0,indexColon);
    }
    final boolean ip=isIP(host);
    try {
      if (ip) {
        for (        final Address addrs : getPossibleIpAddresses(host,port,indexColon >= 0)) {
          if (!addrs.equals(getThisAddress())) {
            if (setPossibleAddresses.add(addrs)) {
              logger.log(Level.FINEST,"String_Node_Str" + addrs);
            }
          }
        }
      }
 else {
        final InetAddress[] allAddresses=InetAddress.getAllByName(host);
        for (        final InetAddress inetAddress : allAddresses) {
          boolean shouldCheck=true;
          Address addrs;
          Interfaces interfaces=config.getNetworkConfig().getInterfaces();
          if (interfaces.isEnabled()) {
            addrs=new Address(inetAddress.getAddress(),port);
            shouldCheck=AddressPicker.matchAddress(addrs.getHost(),interfaces.getInterfaces());
          }
          if (indexColon < 0) {
            if (shouldCheck) {
              for (int i=-2; i < 3; i++) {
                final Address addressProper=new Address(inetAddress.getAddress(),port + i);
                if (!addressProper.equals(getThisAddress())) {
                  if (setPossibleAddresses.add(addressProper)) {
                    logger.log(Level.FINEST,"String_Node_Str" + addressProper);
                  }
                }
              }
            }
          }
 else {
            final Address addressProper=new Address(inetAddress.getAddress(),port);
            if (!addressProper.equals(getThisAddress())) {
              if (setPossibleAddresses.add(addressProper)) {
                logger.log(Level.FINEST,"String_Node_Str" + addressProper);
              }
            }
          }
        }
      }
    }
 catch (    final Exception e) {
      e.printStackTrace();
      logger.log(Level.SEVERE,e.getMessage(),e);
    }
  }
  setPossibleAddresses.addAll(config.getNetworkConfig().getJoin().getTcpIpConfig().getAddresses());
  return setPossibleAddresses;
}

Fixed version (ground truth):
Collection<Address> getPossibleMembers(){
  Join join=config.getNetworkConfig().getJoin();
  final List<String> lsJoinMembers=join.getTcpIpConfig().getMembers();
  final Set<Address> setPossibleAddresses=new HashSet<Address>();
  for (  final String lsJoinMember : lsJoinMembers) {
    String host=lsJoinMember;
    int port=config.getPort();
    final int indexColon=host.indexOf(':');
    if (indexColon >= 0) {
      port=Integer.parseInt(host.substring(indexColon + 1));
      host=host.substring(0,indexColon);
    }
    final boolean ip=isIP(host);
    try {
      if (ip) {
        for (        final Address addrs : getPossibleIpAddresses(host,port,indexColon >= 0)) {
          if (!addrs.equals(getThisAddress())) {
            if (setPossibleAddresses.add(addrs)) {
              logger.log(Level.FINEST,"String_Node_Str" + addrs);
            }
          }
        }
      }
 else {
        final InetAddress[] allAddresses=InetAddress.getAllByName(host);
        for (        final InetAddress inetAddress : allAddresses) {
          boolean shouldCheck=true;
          Address addrs;
          Interfaces interfaces=config.getNetworkConfig().getInterfaces();
          if (interfaces.isEnabled()) {
            addrs=new Address(inetAddress.getAddress(),port);
            shouldCheck=AddressPicker.matchAddress(addrs.getHost(),interfaces.getInterfaces());
          }
          if (indexColon < 0) {
            if (shouldCheck) {
              for (int i=-2; i < 3; i++) {
                final Address addressProper=new Address(inetAddress.getAddress(),port + i);
                if (!addressProper.equals(getThisAddress())) {
                  if (setPossibleAddresses.add(addressProper)) {
                    logger.log(Level.FINEST,"String_Node_Str" + addressProper);
                  }
                }
              }
            }
          }
 else {
            final Address addressProper=new Address(inetAddress.getAddress(),port);
            if (!addressProper.equals(getThisAddress())) {
              if (setPossibleAddresses.add(addressProper)) {
                logger.log(Level.FINEST,"String_Node_Str" + addressProper);
              }
            }
          }
        }
      }
    }
 catch (    final Exception e) {
      e.printStackTrace();
      logger.log(Level.SEVERE,e.getMessage(),e);
    }
  }
  setPossibleAddresses.addAll(config.getNetworkConfig().getJoin().getTcpIpConfig().getAddresses());
  return setPossibleAddresses;
}