Dear all,

  I found a bug and don’t know where to file it. Just send the mail to let you know.

In the apr_dbd_freetds.c +630, function freetds_open:

 

sql = apr_palloc (pool, sizeof (apr_dbd_t));  // should be  apr_pcalloc, like apr_dbd_pgsql_open.c +1231

 

if calls dbd_freetds_query after freetds_open,  it will fail.

static int dbd_freetds_query(apr_dbd_t *sql, int *nrows, const char *query)

{

    if (sql->trans && sql->trans->errnum) {

        return sql->trans->errnum;

}

 

Please confirm this issue.

 

http://svn.apache.org/viewvc/apr/apr-util/branches/1.4.x/dbd/apr_dbd_freetds.c?view=markup

http://svn.apache.org/viewvc/apr/apr-util/branches/1.5.x/dbd/apr_dbd_freetds.c?view=markup

 

 

 

Best Regards

Chunwei Liu