diff options
author | drh <drh@noemail.net> | 2013-12-13 16:23:55 +0000 |
---|---|---|
committer | drh <drh@noemail.net> | 2013-12-13 16:23:55 +0000 |
commit | a3cc007df47198f501b2ae02eeafbb64d6ff0097 (patch) | |
tree | b95008fcd4285186924fe464af8c9a11eb73dc24 /src/vdbeapi.c | |
parent | a5f40593bee1ae4261725e80b18259e3dfda975d (diff) | |
download | sqlite-a3cc007df47198f501b2ae02eeafbb64d6ff0097.tar.gz sqlite-a3cc007df47198f501b2ae02eeafbb64d6ff0097.zip |
Simplication and optimization of error message handling.
FossilOrigin-Name: 9d347f547e7ba9590b0c68edf50a14ad94a2bb92
Diffstat (limited to 'src/vdbeapi.c')
-rw-r--r-- | src/vdbeapi.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/src/vdbeapi.c b/src/vdbeapi.c index d51256217..ea383dffd 100644 --- a/src/vdbeapi.c +++ b/src/vdbeapi.c @@ -486,7 +486,7 @@ int sqlite3_step(sqlite3_stmt *pStmt){ v->doingRerun = 1; assert( v->expired==0 ); } - if( rc2!=SQLITE_OK && ALWAYS(v->isPrepareV2) && ALWAYS(db->pErr) ){ + if( rc2!=SQLITE_OK ){ /* This case occurs after failing to recompile an sql statement. ** The error message from the SQL compiler has already been loaded ** into the database handle. This block copies the error message @@ -496,6 +496,7 @@ int sqlite3_step(sqlite3_stmt *pStmt){ ** sqlite3_errmsg() and sqlite3_errcode(). */ const char *zErr = (const char *)sqlite3_value_text(db->pErr); + assert( zErr!=0 || db->mallocFailed ); sqlite3DbFree(db, v->zErrMsg); if( !db->mallocFailed ){ v->zErrMsg = sqlite3DbStrDup(db, zErr); |