mirror of
https://github.com/sqlite/sqlite.git
synced 2025-08-07 02:42:48 +03:00
Improved comments and extra assert() statements on the OP_Savepoint opcode,
just to make the code a little easier to read and reason about. FossilOrigin-Name: e80b2d9fcbc82ae5dc8a1fc13196f9a30bdb504eb5a5c131d136a78bbd5bbe7b
This commit is contained in:
12
manifest
12
manifest
@@ -1,5 +1,5 @@
|
|||||||
C Fix\sthe\sprevious\scheck-in\s[db9acef14d492121]\sso\sthat\sthe\samalgamation\sbuild\nworks\sfor\ssystems\sfor\swhich\slack\sHAVE_ISNAN.
|
C Improved\scomments\sand\sextra\sassert()\sstatements\son\sthe\sOP_Savepoint\sopcode,\njust\sto\smake\sthe\scode\sa\slittle\seasier\sto\sread\sand\sreason\sabout.
|
||||||
D 2019-05-10T12:14:51.652
|
D 2019-05-10T14:03:07.714
|
||||||
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
F .fossil-settings/empty-dirs dbb81e8fc0401ac46a1491ab34a7f2c7c0452f2f06b54ebb845d024ca8283ef1
|
||||||
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
F .fossil-settings/ignore-glob 35175cdfcf539b2318cb04a9901442804be81cd677d8b889fcc9149c21f239ea
|
||||||
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
|
F LICENSE.md df5091916dbb40e6e9686186587125e1b2ff51f022cc334e886c19a0e9982724
|
||||||
@@ -593,7 +593,7 @@ F src/upsert.c 0dd81b40206841814d46942a7337786932475f085716042d0cb2fc7791bf8ca4
|
|||||||
F src/utf.c 2f0fac345c7660d5c5bd3df9e9d8d33d4c27f366bcfb09e07443064d751a0507
|
F src/utf.c 2f0fac345c7660d5c5bd3df9e9d8d33d4c27f366bcfb09e07443064d751a0507
|
||||||
F src/util.c 4c0669e042b4e50a08a9e5fd14cecc76e5f877efa288533dccddb6fe98f4d6b5
|
F src/util.c 4c0669e042b4e50a08a9e5fd14cecc76e5f877efa288533dccddb6fe98f4d6b5
|
||||||
F src/vacuum.c 82dcec9e7b1afa980288718ad11bc499651c722d7b9f32933c4d694d91cb6ebf
|
F src/vacuum.c 82dcec9e7b1afa980288718ad11bc499651c722d7b9f32933c4d694d91cb6ebf
|
||||||
F src/vdbe.c d4efd6e5ecff8eeef280ce5d622dc2c0cfe085014e5813401b346517574adb18
|
F src/vdbe.c 4ab7c36d29e156835b23b6b797107f0dbdf6d729798d8cf0d33e40e411f02d68
|
||||||
F src/vdbe.h 712bca562eaed1c25506b9faf9680bdc75fc42e2f4a1cd518d883fa79c7a4237
|
F src/vdbe.h 712bca562eaed1c25506b9faf9680bdc75fc42e2f4a1cd518d883fa79c7a4237
|
||||||
F src/vdbeInt.h 3ba14553508d66f58753952d6dd287dce4ec735de02c6440858b4891aed51c17
|
F src/vdbeInt.h 3ba14553508d66f58753952d6dd287dce4ec735de02c6440858b4891aed51c17
|
||||||
F src/vdbeapi.c f9161e5c77f512fbb80091ce8af621d19c9556bda5e734cffaac1198407400da
|
F src/vdbeapi.c f9161e5c77f512fbb80091ce8af621d19c9556bda5e734cffaac1198407400da
|
||||||
@@ -1825,7 +1825,7 @@ F vsixtest/vsixtest.tcl 6a9a6ab600c25a91a7acc6293828957a386a8a93
|
|||||||
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
F vsixtest/vsixtest.vcxproj.data 2ed517e100c66dc455b492e1a33350c1b20fbcdc
|
||||||
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
F vsixtest/vsixtest.vcxproj.filters 37e51ffedcdb064aad6ff33b6148725226cd608e
|
||||||
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
F vsixtest/vsixtest_TemporaryKey.pfx e5b1b036facdb453873e7084e1cae9102ccc67a0
|
||||||
P db9acef14d49212108c8082cc15a9b9b4a56b8afe4fe1104ddf62783739c1fbe
|
P 3cc55e09e6c1de2059d97bdddf2fdfbdcc62c584b513f56faf9d3a39ef80cddd
|
||||||
R 2ae89586bd0923bfda8598a9d4f487b2
|
R 91d5b0019aab212ae793ae1752395d8d
|
||||||
U drh
|
U drh
|
||||||
Z c5db4a9c420d2bf9fb0aafb4f42e2d4b
|
Z b0a1c28086400bbd580accea280a3220
|
||||||
|
@@ -1 +1 @@
|
|||||||
3cc55e09e6c1de2059d97bdddf2fdfbdcc62c584b513f56faf9d3a39ef80cddd
|
e80b2d9fcbc82ae5dc8a1fc13196f9a30bdb504eb5a5c131d136a78bbd5bbe7b
|
@@ -3030,8 +3030,9 @@ case OP_Count: { /* out2 */
|
|||||||
/* Opcode: Savepoint P1 * * P4 *
|
/* Opcode: Savepoint P1 * * P4 *
|
||||||
**
|
**
|
||||||
** Open, release or rollback the savepoint named by parameter P4, depending
|
** Open, release or rollback the savepoint named by parameter P4, depending
|
||||||
** on the value of P1. To open a new savepoint, P1==0. To release (commit) an
|
** on the value of P1. To open a new savepoint set P1==0 (SAVEPOINT_BEGIN).
|
||||||
** existing savepoint, P1==1, or to rollback an existing savepoint P1==2.
|
** To release (commit) an existing savepoint set P1==1 (SAVEPOINT_RELEASE).
|
||||||
|
** To rollback an existing savepoint set P1==2 (SAVEPOINT_ROLLBACK).
|
||||||
*/
|
*/
|
||||||
case OP_Savepoint: {
|
case OP_Savepoint: {
|
||||||
int p1; /* Value of P1 operand */
|
int p1; /* Value of P1 operand */
|
||||||
@@ -3099,6 +3100,7 @@ case OP_Savepoint: {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
|
assert( p1==SAVEPOINT_RELEASE || p1==SAVEPOINT_ROLLBACK );
|
||||||
iSavepoint = 0;
|
iSavepoint = 0;
|
||||||
|
|
||||||
/* Find the named savepoint. If there is no such savepoint, then an
|
/* Find the named savepoint. If there is no such savepoint, then an
|
||||||
@@ -3152,6 +3154,7 @@ case OP_Savepoint: {
|
|||||||
if( rc!=SQLITE_OK ) goto abort_due_to_error;
|
if( rc!=SQLITE_OK ) goto abort_due_to_error;
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
|
assert( p1==SAVEPOINT_RELEASE );
|
||||||
isSchemaChange = 0;
|
isSchemaChange = 0;
|
||||||
}
|
}
|
||||||
for(ii=0; ii<db->nDb; ii++){
|
for(ii=0; ii<db->nDb; ii++){
|
||||||
@@ -3188,6 +3191,7 @@ case OP_Savepoint: {
|
|||||||
db->nSavepoint--;
|
db->nSavepoint--;
|
||||||
}
|
}
|
||||||
}else{
|
}else{
|
||||||
|
assert( p1==SAVEPOINT_ROLLBACK );
|
||||||
db->nDeferredCons = pSavepoint->nDeferredCons;
|
db->nDeferredCons = pSavepoint->nDeferredCons;
|
||||||
db->nDeferredImmCons = pSavepoint->nDeferredImmCons;
|
db->nDeferredImmCons = pSavepoint->nDeferredImmCons;
|
||||||
}
|
}
|
||||||
|
Reference in New Issue
Block a user