-C Fix\sa\stypo\sin\san\sSQLITE_USER_AUTHENTICATION\smacro.
-D 2015-09-14T14:49:23.201
+C Testability\simprovements\sfor\sthe\sONEPASS_MULTI\senhancement.
+D 2015-09-14T19:26:37.988
F Makefile.arm-wince-mingw32ce-gcc d6df77f1f48d690bd73162294bbba7f59507c72f
F Makefile.in f85066ce844a28b671aaeeff320921cd0ce36239
F Makefile.linux-gcc 91d710bdc4998cb015f39edf3cb314ec4f4d7e23
F src/utf.c fc6b889ba0779b7722634cdeaa25f1930d93820c
F src/util.c fc612367108b74573c5fd13a85d0a23027f438bd
F src/vacuum.c 2ddd5cad2a7b9cef7f9e431b8c7771634c6b1701
-F src/vdbe.c a8a5cb1126bf79104e00326abd6a7d22ac3bc4c3
+F src/vdbe.c 5048103aa6bc9c01bf1a4620729256d1e873bb6c
F src/vdbe.h 4bc88bd0e06f8046ee6ab7487c0015e85ad949ad
F src/vdbeInt.h 8b867eac234e28627ffcace3cd4b4b79bbec664b
F src/vdbeapi.c 0d890f57caf143b114a95ce699e59af51359c508
F tool/warnings-clang.sh f6aa929dc20ef1f856af04a730772f59283631d4
F tool/warnings.sh 48bd54594752d5be3337f12c72f28d2080cb630b
F tool/win/sqlite.vsix deb315d026cc8400325c5863eef847784a219a2f
-P 16e56bdadef903c6439a487f2683388aeeb0c625
-R f8fa410ffd0eb073e2e43d46c84640d3
+P 379455af9fdfb299a857d46f35f0a76ed6daa08a
+R 240d53905959924a39a1969f0c2c4fad
U drh
-Z 5de1b91d25cb0490451927525818647a
+Z db76ee6590838fdbed88f2282d6173bf
-379455af9fdfb299a857d46f35f0a76ed6daa08a
\ No newline at end of file
+d2df93f26fc0cf6fe01acfeaf2946972e9d8cca2
\ No newline at end of file
res = 0;
iKey = pIn3->u.i;
rc = sqlite3BtreeMovetoUnpacked(pCrsr, 0, iKey, 0, &res);
+ assert( rc==SQLITE_OK || res==0 );
pC->movetoTarget = iKey; /* Used by OP_Delete */
pC->nullRow = 0;
pC->cacheStatus = CACHE_STALE;
VdbeBranchTaken(res!=0,2);
pC->seekResult = res;
if( res!=0 ){
- if( pOp->p2==0 && rc==SQLITE_OK ) rc = SQLITE_CORRUPT_BKPT;
- goto jump_to_p2;
+ assert( rc==SQLITE_OK );
+ if( pOp->p2==0 ){
+ rc = SQLITE_CORRUPT_BKPT;
+ }else{
+ goto jump_to_p2;
+ }
}
break;
}
*/
case OP_Delete: {
VdbeCursor *pC;
+ u8 hasUpdateCallback;
assert( pOp->p1>=0 && pOp->p1<p->nCursor );
pC = p->apCsr[pOp->p1];
assert( pC->pCursor!=0 ); /* Only valid for real tables, no pseudotables */
assert( pC->deferredMoveto==0 );
- if( pOp->p5 && db->xUpdateCallback && pOp->p4.z && pC->isTable ){
+ hasUpdateCallback = db->xUpdateCallback && pOp->p4.z && pC->isTable;
+ if( pOp->p5 && hasUpdateCallback ){
sqlite3BtreeKeySize(pC->pCursor, &pC->movetoTarget);
}
pC->cacheStatus = CACHE_STALE;
/* Invoke the update-hook if required. */
- if( rc==SQLITE_OK && db->xUpdateCallback && pOp->p4.z && pC->isTable ){
+ if( rc==SQLITE_OK && hasUpdateCallback ){
db->xUpdateCallback(db->pUpdateArg, SQLITE_DELETE,
db->aDb[pC->iDb].zName, pOp->p4.z, pC->movetoTarget);
assert( pC->iDb>=0 );