summaryrefslogtreecommitdiff
path: root/dbd/apr_dbd_sqlite3.c
diff options
context:
space:
mode:
authorbojan <bojan@13f79535-47bb-0310-9956-ffa450edef68>2006-06-14 06:53:08 +0000
committerbojan <bojan@13f79535-47bb-0310-9956-ffa450edef68>2006-06-14 06:53:08 +0000
commitbd2f1cd330c10d129e3312503f66683c4fd471e1 (patch)
treeba9c370dbea507ae7ac74c2ce541bfc0e664320a /dbd/apr_dbd_sqlite3.c
parent05d61b879cbcec210e3ea4a399b8884445e90929 (diff)
downloadlibapr-util-bd2f1cd330c10d129e3312503f66683c4fd471e1.tar.gz
Delay getting parameter count until after transaction check.
git-svn-id: http://svn.apache.org/repos/asf/apr/apr-util/trunk@414125 13f79535-47bb-0310-9956-ffa450edef68
Diffstat (limited to 'dbd/apr_dbd_sqlite3.c')
-rw-r--r--dbd/apr_dbd_sqlite3.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/dbd/apr_dbd_sqlite3.c b/dbd/apr_dbd_sqlite3.c
index 76074d03..450293cd 100644
--- a/dbd/apr_dbd_sqlite3.c
+++ b/dbd/apr_dbd_sqlite3.c
@@ -403,12 +403,13 @@ static int dbd_sqlite3_pvquery(apr_pool_t *pool, apr_dbd_t *sql, int *nrows,
apr_dbd_prepared_t *statement, va_list args)
{
const char **values;
- int i, nargs = sqlite3_bind_parameter_count(statement->stmt);
+ int i, nargs;
if (sql->trans && sql->trans->errnum) {
return sql->trans->errnum;
}
+ nargs = sqlite3_bind_parameter_count(statement->stmt);
values = apr_palloc(pool, sizeof(*values) * nargs);
for (i = 0; i < nargs; i++) {
@@ -538,12 +539,13 @@ static int dbd_sqlite3_pvselect(apr_pool_t *pool, apr_dbd_t *sql,
va_list args)
{
const char **values;
- int i, nargs = sqlite3_bind_parameter_count(statement->stmt);
+ int i, nargs;
if (sql->trans && sql->trans->errnum) {
return sql->trans->errnum;
}
+ nargs = sqlite3_bind_parameter_count(statement->stmt);
values = apr_palloc(pool, sizeof(*values) * nargs);
for (i = 0; i < nargs; i++) {