Skip Menu |

This queue is for tickets about the DBD-SQLite CPAN distribution.

Report information
The Basics
Id: 35773
Status: resolved
Priority: 0/
Queue: DBD-SQLite

Owner: Nobody in particular
Requestors: jw [...]

Bug Information
Severity: (no value)
Broken in: 1.14
Fixed in: (no value)


Subject: sqlite3_finalize shall not be called twice
Download (untitled) / with headers
text/plain 152b
one prepare is ended by one finalize, each bind is ended by a reset (inside the enclosing prepare-finalize). The code as is called finalize after bind.
Subject: sqlite3-finalize.diff
--- dbdimp.c +++ dbdimp.c @@ -399,7 +399,7 @@ sqlite_st_execute (SV *sth, imp_sth_t *i continue; } /* There are bug reports that say this should be sqlite3_reset() */ - sqlite3_finalize(imp_sth->stmt); + sqlite3_reset(imp_sth->stmt); sqlite_error(sth, (imp_xxh_t*)imp_sth, imp_sth->retval, (char*)sqlite3_errmsg(imp_dbh->db)); return -5; } @@ -419,7 +419,7 @@ sqlite_st_execute (SV *sth, imp_sth_t *i sqlite_trace(5, "exec ok - %d rows, %d cols\n", imp_sth->nrow, DBIc_NUM_FIELDS(imp_sth)); return 0; /* There are bug reports that say this should be sqlite3_reset() */ - default: sqlite3_finalize(imp_sth->stmt); + default: sqlite3_reset(imp_sth->stmt); sqlite_error(sth, (imp_xxh_t*)imp_sth, imp_sth->retval, (char*)sqlite3_errmsg(imp_dbh->db)); return -6; }

This service is sponsored and maintained by Best Practical Solutions and runs on infrastructure.

Please report any issues with to