MCPcopy
hub / github.com/sql-js/sql.js / _sqlite3BtreeRollback

Function _sqlite3BtreeRollback

js/sql-debug.js:78176–78324  ·  view source on GitHub ↗
($0,$1,$2)

Source from the content-addressed store, hash-verified

78174 return ($$0|0);
78175}
78176function _sqlite3BtreeRollback($0,$1,$2) {
78177 $0 = $0|0;
78178 $1 = $1|0;
78179 $2 = $2|0;
78180 var $$017$i = 0, $$0288 = 0, $$06 = 0, $$09 = 0, $$idx = 0, $$idx$i$i = 0, $$idx$i$i$i = 0, $$idx$val = 0, $$idx$val$i$i$i = 0, $$idx$val15$i$i = 0, $$idx1 = 0, $$idx1$val = 0, $$idx14$i$i = 0, $$idx14$val$i$i = 0, $$phi$trans$insert = 0, $$pre = 0, $10 = 0, $11 = 0, $12 = 0, $13 = 0;
78181 var $14 = 0, $15 = 0, $16 = 0, $17 = 0, $18 = 0, $19 = 0, $20 = 0, $21 = 0, $22 = 0, $23 = 0, $24 = 0, $25 = 0, $26 = 0, $27 = 0, $28 = 0, $29 = 0, $3 = 0, $30 = 0, $31 = 0, $32 = 0;
78182 var $33 = 0, $34 = 0, $35 = 0, $36 = 0, $37 = 0, $38 = 0, $39 = 0, $4 = 0, $40 = 0, $41 = 0, $42 = 0, $43 = 0, $44 = 0, $45 = 0, $46 = 0, $47 = 0, $48 = 0, $49 = 0, $5 = 0, $50 = 0;
78183 var $51 = 0, $52 = 0, $53 = 0, $54 = 0, $55 = 0, $56 = 0, $57 = 0, $58 = 0, $59 = 0, $6 = 0, $60 = 0, $61 = 0, $62 = 0, $63 = 0, $64 = 0, $65 = 0, $7 = 0, $8 = 0, $9 = 0, label = 0;
78184 var sp = 0;
78185 sp = STACKTOP;
78186 STACKTOP = STACKTOP + 16|0;
78187 $3 = sp;
78188 $4 = ((($0)) + 4|0);
78189 $5 = HEAP32[$4>>2]|0;
78190 $6 = HEAP32[$0>>2]|0;
78191 $7 = ((($5)) + 4|0);
78192 HEAP32[$7>>2] = $6;
78193 $8 = ($1|0)==(0);
78194 if ($8) {
78195 $9 = ((($5)) + 8|0);
78196 $$017$i = HEAP32[$9>>2]|0;
78197 $10 = ($$017$i|0)==(0|0);
78198 if (!($10)) {
78199 $11 = (_saveCursorsOnList($$017$i,0,0)|0);
78200 $12 = ($11|0)==(0);
78201 if (!($12)) {
78202 $$0288 = 0;$$09 = $11;
78203 label = 4;
78204 }
78205 }
78206 } else {
78207 $$0288 = $2;$$09 = $1;
78208 label = 4;
78209 }
78210 if ((label|0) == 4) {
78211 (_sqlite3BtreeTripAllCursors($0,$$09,$$0288)|0);
78212 }
78213 $13 = ((($0)) + 8|0);
78214 $14 = HEAP8[$13>>0]|0;
78215 $15 = ($14<<24>>24)==(2);
78216 if (!($15)) {
78217 _btreeEndTransaction($0);
78218 STACKTOP = sp;return;
78219 }
78220 $16 = HEAP32[$5>>2]|0;
78221 (_sqlite3PagerRollback($16)|0);
78222 $17 = HEAP32[$5>>2]|0;
78223 $18 = ((($17)) + 200|0);
78224 $19 = HEAP32[$18>>2]|0;
78225 $20 = (FUNCTION_TABLE_iiiii[$19 & 255]($17,1,$3,0)|0);
78226 $21 = ($20|0)==(0);
78227 if ($21) {
78228 $22 = HEAP32[$3>>2]|0;
78229 $$idx14$i$i = ((($22)) + 8|0);
78230 $$idx14$val$i$i = HEAP32[$$idx14$i$i>>2]|0;
78231 $23 = ((($$idx14$val$i$i)) + 4|0);
78232 $24 = HEAP32[$23>>2]|0;
78233 $25 = ($24|0)==(1);

Callers 3

_sqlite3_backup_finishFunction · 0.85
_sqlite3RollbackAllFunction · 0.85
_sqlite3BtreeCloseFunction · 0.85

Calls 8

_saveCursorsOnListFunction · 0.85
_btreeEndTransactionFunction · 0.85
_sqlite3PagerRollbackFunction · 0.85
_sqlite3PcacheReleaseFunction · 0.85
_pager_end_transactionFunction · 0.85
_pager_unlockFunction · 0.85
_sqlite3BitvecDestroyFunction · 0.85

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…