Bug#450744: libdbd-sqlite3-perl: segv re-using statement after error
Niko Tyni
ntyni at iki.fi
Sat Nov 10 19:36:54 UTC 2007
forwarded 450744 http://rt.cpan.org/Public/Bug/Display.html?id=30558
tag 450744 patch
thanks
On Sat, Nov 10, 2007 at 07:50:17AM +1100, Kevin Ryde wrote:
> Package: libdbd-sqlite3-perl
> Version: 1.14-1
> Severity: normal
>
> I suspect that when sqlite_st_execute gets an "insert" error like this
> it ends up freeing the underlying "sqlite3_stmt" object, so that a
> further execute of it bombs. I think the free is done by the following
> line in sqlite_st_execute (the first one, at "return -5"),
>
> /* There are bug reports that say this should be sqlite3_reset() */
> sqlite3_finalize(imp_sth->stmt);
Hi,
I agree, it indeed looks like this should be sqlite3_reset().
The same issue is reported upstream as CPAN #30558:
http://rt.cpan.org/Public/Bug/Display.html?id=30558
I'll forward your comments there. It would be nice to have this fixed
upstream, although the fix looks quite safe and doesn't break anything
in the DBD::SQLite test suite.
Thanks for your report,
--
Niko Tyni ntyni at iki.fi
More information about the pkg-perl-maintainers
mailing list