Program: 71813
Project: 71813
Buggy source:
public void open(Properties connProperties) throws OdaException {
  if (connProperties == null) {
    IllegalArgumentException e=new IllegalArgumentException("String_Node_Str");
    logger.logp(java.util.logging.Level.FINE,Connection.class.getName(),"String_Node_Str",e.getMessage(),e);
    throw e;
  }
  if (logger.isLoggable(Level.FINE)) {
    String logMsg="String_Node_Str";
    for (Enumeration enumeration=connProperties.propertyNames(); enumeration.hasMoreElements(); ) {
      String propName=(String)enumeration.nextElement();
      String lcPropName=propName.toLowerCase();
      String propVal;
      if (lcPropName.indexOf("String_Node_Str") >= 0 || lcPropName.indexOf("String_Node_Str") >= 0)       propVal="String_Node_Str";
 else {
        propVal=connProperties.getProperty(propName);
        if (lcPropName.equals("String_Node_Str")) {
          propVal=LogUtil.encryptURL(propVal);
        }
      }
      logMsg+=propName + "String_Node_Str" + propVal+ "String_Node_Str";
    }
    logger.logp(Level.FINE,Connection.class.getName(),"String_Node_Str",logMsg);
  }
  close();
  String dataSource=connProperties.getProperty(Constants.ODADataSource);
  if (dataSource != null) {
    UnsupportedOperationException e=new UnsupportedOperationException("String_Node_Str");
    logger.logp(java.util.logging.Level.FINE,Connection.class.getName(),"String_Node_Str",e.getMessage(),e);
    throw e;
  }
 else {
    String url=connProperties.getProperty(Constants.ODAURL);
    String jndiName=connProperties.getProperty(Constants.ODAJndiName);
    if ((url == null || url.length() == 0) && (jndiName == null || jndiName.length() == 0)) {
      throw new JDBCException(ResourceConstants.DRIVER_MISSING_PROPERTIES,ResourceConstants.ERROR_MISSING_PROPERTIES);
    }
    connectByUrl(url,connProperties);
  }
}

Fixed version (ground truth):
public void open(Properties connProperties) throws OdaException {
  if (this.appContext != null) {
    Object value=this.appContext.get(IConnectionFactory.PASS_IN_CONNECTION);
    if (value != null && (value instanceof java.sql.Connection)) {
      jdbcConn=(java.sql.Connection)value;
      logger.logp(Level.FINE,Connection.class.getName(),"String_Node_Str",jdbcConn.toString());
      return;
    }
  }
  if (connProperties == null) {
    IllegalArgumentException e=new IllegalArgumentException("String_Node_Str");
    logger.logp(java.util.logging.Level.FINE,Connection.class.getName(),"String_Node_Str",e.getMessage(),e);
    throw e;
  }
  if (logger.isLoggable(Level.FINE)) {
    String logMsg="String_Node_Str";
    for (Enumeration enumeration=connProperties.propertyNames(); enumeration.hasMoreElements(); ) {
      String propName=(String)enumeration.nextElement();
      String lcPropName=propName.toLowerCase();
      String propVal;
      if (lcPropName.indexOf("String_Node_Str") >= 0 || lcPropName.indexOf("String_Node_Str") >= 0)       propVal="String_Node_Str";
 else {
        propVal=connProperties.getProperty(propName);
        if (lcPropName.equals("String_Node_Str")) {
          propVal=LogUtil.encryptURL(propVal);
        }
      }
      logMsg+=propName + "String_Node_Str" + propVal+ "String_Node_Str";
    }
    logger.logp(Level.FINE,Connection.class.getName(),"String_Node_Str",logMsg);
  }
  close();
  String dataSource=connProperties.getProperty(Constants.ODADataSource);
  if (dataSource != null) {
    UnsupportedOperationException e=new UnsupportedOperationException("String_Node_Str");
    logger.logp(java.util.logging.Level.FINE,Connection.class.getName(),"String_Node_Str",e.getMessage(),e);
    throw e;
  }
 else {
    String url=connProperties.getProperty(Constants.ODAURL);
    String jndiName=connProperties.getProperty(Constants.ODAJndiName);
    if ((url == null || url.length() == 0) && (jndiName == null || jndiName.length() == 0)) {
      throw new JDBCException(ResourceConstants.DRIVER_MISSING_PROPERTIES,ResourceConstants.ERROR_MISSING_PROPERTIES);
    }
    connectByUrl(url,connProperties);
  }
}