1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-08-08 14:02:16 +03:00

Move the expired-statement test for OP_Function until after all memory has

been freed.  The test is still commented out, however.

FossilOrigin-Name: 425e3edb146c497817855dd741878709a25c8b98
This commit is contained in:
drh
2011-04-04 12:29:20 +00:00
parent 26ec621a9f
commit 7b94e7f838
3 changed files with 17 additions and 19 deletions

View File

@@ -1405,17 +1405,6 @@ case OP_Function: {
goto no_mem;
}
/* The app-defined function has done something that as caused this
** statement to expire. (Perhaps the function called sqlite3_exec()
** with a CREATE TABLE statement.)
*/
#if 0
if( p->expired ){
rc = SQLITE_ABORT;
break;
}
#endif
/* If any auxiliary data functions have been called by this user function,
** immediately call the destructor for any non-static values.
*/
@@ -1437,6 +1426,15 @@ case OP_Function: {
if( sqlite3VdbeMemTooBig(pOut) ){
goto too_big;
}
#if 0
/* The app-defined function has done something that as caused this
** statement to expire. (Perhaps the function called sqlite3_exec()
** with a CREATE TABLE statement.)
*/
if( p->expired ) rc = SQLITE_ABORT;
#endif
REGISTER_TRACE(pOp->p3, pOut);
UPDATE_MAX_BLOBSIZE(pOut);
break;