Roger Binns wrote:
xFinal is always called.


That makes life easier.  Is it possible to tell if xFinal wants
real results back versus there was an error earlier and I only
need to cleanup.


It is not possible at this time. xFinal called for cleanup purposes only is an exception condition. One does not normally worry about optimizing performance in exception handlers. So I do not see this as a big issue.

When SQLite really wants a value out of xFinal, it calls it from
vdbe.c line 4409.  When it just wants to cleanup memory, it calls
xFinal from vdbeaux.c line 704.  Because these happen from very
different places, it would be possible to set a flag (in the
opaque sqlite3_context structure) which could be queried by a
new API function.  But I am loath to add new API functions without
good reason and I do not consider performance optimization of an
exception condition a good reason.  So you are going to have to
argue very hard to get such a thing implemented.

--
D. Richard Hipp -- [EMAIL PROTECTED] -- 704.948.4565



Reply via email to