Program: 29055
Project: 29055
Buggy source:
private ParameterMap populateConnectionPoolParameters(){
  String steadyPoolSize=null;
  String maxPoolSize=null;
  String poolResizeQuantity=null;
  String idleTimeoutInSecs=null;
  String maxWaitTimeInMillis=null;
  String failAllConnections=null;
  String transactionSupport=null;
  ParameterMap parameters=new ParameterMap();
  if (props != null) {
    Enumeration keys=props.keys();
    Properties tmpProps=new Properties();
    while (keys.hasMoreElements()) {
      String propKey=(String)keys.nextElement();
      if ("String_Node_Str".equals(propKey))       steadyPoolSize=props.getProperty(propKey);
 else       if ("String_Node_Str".equals(propKey))       maxPoolSize=props.getProperty(propKey);
 else       if ("String_Node_Str".equals(propKey))       poolResizeQuantity=props.getProperty(propKey);
 else       if ("String_Node_Str".equals(propKey))       idleTimeoutInSecs=props.getProperty(propKey);
 else       if ("String_Node_Str".equals(propKey))       maxWaitTimeInMillis=props.getProperty(propKey);
 else       if ("String_Node_Str".equals(propKey))       transactionSupport=props.getProperty(propKey);
 else       if ("String_Node_Str".equals(propKey))       failAllConnections=props.getProperty(propKey);
 else {
        if ("String_Node_Str".equals(propKey)) {
          String addressListProp=props.getProperty(propKey);
          props.setProperty(propKey,"String_Node_Str" + addressListProp + "String_Node_Str");
        }
 else         if ("String_Node_Str".equals(propKey)) {
          String password=props.getProperty(propKey);
          if (isPasswordAlias(password))           props.setProperty(propKey,"String_Node_Str" + password + "String_Node_Str");
        }
        tmpProps.setProperty(propKey,props.getProperty(propKey));
      }
    }
    if (tmpProps.size() > 0) {
      String propString="String_Node_Str";
      for (      java.util.Map.Entry<Object,Object> prop : tmpProps.entrySet()) {
        propString+=prop.getKey() + "String_Node_Str" + prop.getValue()+ "String_Node_Str";
      }
      propString=propString.substring(0,propString.length());
      parameters.set("String_Node_Str",propString);
    }
  }
  parameters.set(DEFAULT_OPERAND,jndiNameForConnectionPool);
  parameters.set("String_Node_Str",jndiName);
  if (description != null)   parameters.set("String_Node_Str",description);
  String raName=DEFAULT_JMS_ADAPTER;
  parameters.set("String_Node_Str",raName);
  parameters.set("String_Node_Str",resourceType);
  parameters.set("String_Node_Str",(maxPoolSize == null) ? "String_Node_Str" : maxPoolSize);
  parameters.set("String_Node_Str",(steadyPoolSize == null) ? "String_Node_Str" : steadyPoolSize);
  if (poolResizeQuantity != null) {
    parameters.set("String_Node_Str",poolResizeQuantity);
  }
  if (idleTimeoutInSecs != null) {
    parameters.set("String_Node_Str",idleTimeoutInSecs);
  }
  if (maxWaitTimeInMillis != null) {
    parameters.set("String_Node_Str",maxWaitTimeInMillis);
  }
  if (failAllConnections != null) {
    parameters.set("String_Node_Str",failAllConnections);
  }
  if (transactionSupport != null) {
    parameters.set("String_Node_Str",transactionSupport);
  }
  return parameters;
}

Fixed version (ground truth):
private ParameterMap populateConnectionPoolParameters(){
  String steadyPoolSize=null;
  String maxPoolSize=null;
  String poolResizeQuantity=null;
  String idleTimeoutInSecs=null;
  String maxWaitTimeInMillis=null;
  String failAllConnections=null;
  String transactionSupport=null;
  ParameterMap parameters=new ParameterMap();
  if (props != null) {
    Enumeration keys=props.keys();
    Properties tmpProps=new Properties();
    while (keys.hasMoreElements()) {
      String propKey=(String)keys.nextElement();
      if ("String_Node_Str".equals(propKey))       steadyPoolSize=props.getProperty(propKey);
 else       if ("String_Node_Str".equals(propKey))       maxPoolSize=props.getProperty(propKey);
 else       if ("String_Node_Str".equals(propKey))       poolResizeQuantity=props.getProperty(propKey);
 else       if ("String_Node_Str".equals(propKey))       idleTimeoutInSecs=props.getProperty(propKey);
 else       if ("String_Node_Str".equals(propKey))       maxWaitTimeInMillis=props.getProperty(propKey);
 else       if ("String_Node_Str".equals(propKey))       transactionSupport=props.getProperty(propKey);
 else       if ("String_Node_Str".equals(propKey))       failAllConnections=props.getProperty(propKey);
 else {
        if ("String_Node_Str".equals(propKey)) {
          String addressListProp=props.getProperty(propKey);
          props.setProperty(propKey,"String_Node_Str" + addressListProp + "String_Node_Str");
        }
 else         if ("String_Node_Str".equals(propKey)) {
          String password=props.getProperty(propKey);
          if (isPasswordAlias(password))           props.setProperty(propKey,"String_Node_Str" + password + "String_Node_Str");
        }
        tmpProps.setProperty(propKey,props.getProperty(propKey));
      }
    }
    if (tmpProps.size() > 0) {
      StringBuilder builder=new StringBuilder();
      for (      java.util.Map.Entry<Object,Object> prop : tmpProps.entrySet()) {
        builder.append(prop.getKey()).append("String_Node_Str").append(prop.getValue()).append("String_Node_Str");
      }
      String propString=builder.toString();
      int lastColonIndex=propString.lastIndexOf("String_Node_Str");
      if (lastColonIndex >= 0) {
        propString=propString.substring(0,lastColonIndex);
      }
      parameters.set("String_Node_Str",propString);
    }
  }
  parameters.set(DEFAULT_OPERAND,jndiNameForConnectionPool);
  parameters.set("String_Node_Str",jndiName);
  if (description != null)   parameters.set("String_Node_Str",description);
  String raName=DEFAULT_JMS_ADAPTER;
  parameters.set("String_Node_Str",raName);
  parameters.set("String_Node_Str",resourceType);
  parameters.set("String_Node_Str",(maxPoolSize == null) ? "String_Node_Str" : maxPoolSize);
  parameters.set("String_Node_Str",(steadyPoolSize == null) ? "String_Node_Str" : steadyPoolSize);
  if (poolResizeQuantity != null) {
    parameters.set("String_Node_Str",poolResizeQuantity);
  }
  if (idleTimeoutInSecs != null) {
    parameters.set("String_Node_Str",idleTimeoutInSecs);
  }
  if (maxWaitTimeInMillis != null) {
    parameters.set("String_Node_Str",maxWaitTimeInMillis);
  }
  if (failAllConnections != null) {
    parameters.set("String_Node_Str",failAllConnections);
  }
  if (transactionSupport != null) {
    parameters.set("String_Node_Str",transactionSupport);
  }
  return parameters;
}