diff options
author | dan <dan@noemail.net> | 2015-01-01 18:03:49 +0000 |
---|---|---|
committer | dan <dan@noemail.net> | 2015-01-01 18:03:49 +0000 |
commit | 37db72f1f7ca41c61b1c084bdb75f3111ceba6f8 (patch) | |
tree | 5a01dcb28b6513353a64e93b11d6243845e69bc7 /src/legacy.c | |
parent | 6024772ba292a9abc6810dd0b12767d02b47ccf1 (diff) | |
parent | a0de826c9ff84bd19de76ebbc0d4bdafa9686d3a (diff) | |
download | sqlite-37db72f1f7ca41c61b1c084bdb75f3111ceba6f8.tar.gz sqlite-37db72f1f7ca41c61b1c084bdb75f3111ceba6f8.zip |
Merge latest trunk changes with this branch.
FossilOrigin-Name: 4b3651677e7132c4c45605bc1f216fc08ef31198
Diffstat (limited to 'src/legacy.c')
-rw-r--r-- | src/legacy.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/src/legacy.c b/src/legacy.c index 94649ae70..a10006e55 100644 --- a/src/legacy.c +++ b/src/legacy.c @@ -44,7 +44,7 @@ int sqlite3_exec( if( zSql==0 ) zSql = ""; sqlite3_mutex_enter(db->mutex); - sqlite3Error(db, SQLITE_OK, 0); + sqlite3Error(db, SQLITE_OK); while( rc==SQLITE_OK && zSql[0] ){ int nCol; char **azVals = 0; @@ -96,10 +96,13 @@ int sqlite3_exec( } } if( xCallback(pArg, nCol, azVals, azCols) ){ + /* EVIDENCE-OF: R-38229-40159 If the callback function to + ** sqlite3_exec() returns non-zero, then sqlite3_exec() will + ** return SQLITE_ABORT. */ rc = SQLITE_ABORT; sqlite3VdbeFinalize((Vdbe *)pStmt); pStmt = 0; - sqlite3Error(db, SQLITE_ABORT, 0); + sqlite3Error(db, SQLITE_ABORT); goto exec_out; } } @@ -122,14 +125,14 @@ exec_out: sqlite3DbFree(db, azCols); rc = sqlite3ApiExit(db, rc); - if( rc!=SQLITE_OK && ALWAYS(rc==sqlite3_errcode(db)) && pzErrMsg ){ + if( rc!=SQLITE_OK && pzErrMsg ){ int nErrMsg = 1 + sqlite3Strlen30(sqlite3_errmsg(db)); *pzErrMsg = sqlite3Malloc(nErrMsg); if( *pzErrMsg ){ memcpy(*pzErrMsg, sqlite3_errmsg(db), nErrMsg); }else{ rc = SQLITE_NOMEM; - sqlite3Error(db, SQLITE_NOMEM, 0); + sqlite3Error(db, SQLITE_NOMEM); } }else if( pzErrMsg ){ *pzErrMsg = 0; |