Fossil SCM
Execute 'optional' SQL statements in their original order.
Commit
9491f1dd54e2ff7c432845bb2293b3bbd736141d
Parent
1a2aa2b37ecc8ed…
1 file changed
+4
-2
M
src/db.c
+4
-2
| --- src/db.c | ||
| +++ src/db.c | ||
| @@ -159,14 +159,16 @@ | ||
| 159 | 159 | if( rollbackFlag ) db.doRollback = 1; |
| 160 | 160 | db.nBegin--; |
| 161 | 161 | if( db.nBegin==0 ){ |
| 162 | 162 | int i; |
| 163 | 163 | if( db.doRollback==0 && db.nPriorChanges<sqlite3_total_changes(g.db) ){ |
| 164 | + i = 0; | |
| 164 | 165 | while( db.nBeforeCommit ){ |
| 165 | 166 | db.nBeforeCommit--; |
| 166 | - sqlite3_exec(g.db, db.azBeforeCommit[db.nBeforeCommit], 0, 0, 0); | |
| 167 | - sqlite3_free(db.azBeforeCommit[db.nBeforeCommit]); | |
| 167 | + sqlite3_exec(g.db, db.azBeforeCommit[i], 0, 0, 0); | |
| 168 | + sqlite3_free(db.azBeforeCommit[i]); | |
| 169 | + i++; | |
| 168 | 170 | } |
| 169 | 171 | leaf_do_pending_checks(); |
| 170 | 172 | } |
| 171 | 173 | for(i=0; db.doRollback==0 && i<db.nCommitHook; i++){ |
| 172 | 174 | db.doRollback |= db.aHook[i].xHook(); |
| 173 | 175 |
| --- src/db.c | |
| +++ src/db.c | |
| @@ -159,14 +159,16 @@ | |
| 159 | if( rollbackFlag ) db.doRollback = 1; |
| 160 | db.nBegin--; |
| 161 | if( db.nBegin==0 ){ |
| 162 | int i; |
| 163 | if( db.doRollback==0 && db.nPriorChanges<sqlite3_total_changes(g.db) ){ |
| 164 | while( db.nBeforeCommit ){ |
| 165 | db.nBeforeCommit--; |
| 166 | sqlite3_exec(g.db, db.azBeforeCommit[db.nBeforeCommit], 0, 0, 0); |
| 167 | sqlite3_free(db.azBeforeCommit[db.nBeforeCommit]); |
| 168 | } |
| 169 | leaf_do_pending_checks(); |
| 170 | } |
| 171 | for(i=0; db.doRollback==0 && i<db.nCommitHook; i++){ |
| 172 | db.doRollback |= db.aHook[i].xHook(); |
| 173 |
| --- src/db.c | |
| +++ src/db.c | |
| @@ -159,14 +159,16 @@ | |
| 159 | if( rollbackFlag ) db.doRollback = 1; |
| 160 | db.nBegin--; |
| 161 | if( db.nBegin==0 ){ |
| 162 | int i; |
| 163 | if( db.doRollback==0 && db.nPriorChanges<sqlite3_total_changes(g.db) ){ |
| 164 | i = 0; |
| 165 | while( db.nBeforeCommit ){ |
| 166 | db.nBeforeCommit--; |
| 167 | sqlite3_exec(g.db, db.azBeforeCommit[i], 0, 0, 0); |
| 168 | sqlite3_free(db.azBeforeCommit[i]); |
| 169 | i++; |
| 170 | } |
| 171 | leaf_do_pending_checks(); |
| 172 | } |
| 173 | for(i=0; db.doRollback==0 && i<db.nCommitHook; i++){ |
| 174 | db.doRollback |= db.aHook[i].xHook(); |
| 175 |