Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Add missing VdbeCoverage() macros to new code. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | nulls-last |
Files: | files | file ages | folders |
SHA3-256: |
b1cbcdc6eb42cca0c42a05e0d6ba4c6c |
User & Date: | dan 2019-08-21 19:58:11.253 |
Context
2019-08-22
| ||
19:35 | Merge fixes from trunk. Also fix a reference to the KeyInfo.aSortOrder field, which should now be KeyInfo.aSortFlags (check-in: 63e625c8eb user: drh tags: nulls-last) | |
2019-08-21
| ||
19:58 | Add missing VdbeCoverage() macros to new code. (check-in: b1cbcdc6eb user: dan tags: nulls-last) | |
17:46 | Disable broken test case in expert1.test. (check-in: 73e30c2e92 user: dan tags: nulls-last) | |
Changes
Changes to src/where.c.
︙ | ︙ | |||
5214 5215 5216 5217 5218 5219 5220 5221 5222 | VdbeCoverage(v); VdbeCoverageIf(v, pLevel->op==OP_Next); VdbeCoverageIf(v, pLevel->op==OP_Prev); VdbeCoverageIf(v, pLevel->op==OP_VNext); if( pLevel->regBignull ){ sqlite3VdbeResolveLabel(v, pLevel->addrBignull); addr = sqlite3VdbeAddOp1(v, OP_If, pLevel->regBignull); sqlite3VdbeAddOp2(v, OP_Integer, 1, pLevel->regBignull); sqlite3VdbeAddOp2(v, OP_Goto, 0, pLevel->p2-1); | > < < < < | 5214 5215 5216 5217 5218 5219 5220 5221 5222 5223 5224 5225 5226 5227 5228 5229 5230 | VdbeCoverage(v); VdbeCoverageIf(v, pLevel->op==OP_Next); VdbeCoverageIf(v, pLevel->op==OP_Prev); VdbeCoverageIf(v, pLevel->op==OP_VNext); if( pLevel->regBignull ){ sqlite3VdbeResolveLabel(v, pLevel->addrBignull); addr = sqlite3VdbeAddOp1(v, OP_If, pLevel->regBignull); VdbeCoverage(v); sqlite3VdbeAddOp2(v, OP_Integer, 1, pLevel->regBignull); sqlite3VdbeAddOp2(v, OP_Goto, 0, pLevel->p2-1); sqlite3VdbeJumpHere(v, addr); } #ifndef SQLITE_DISABLE_SKIPAHEAD_DISTINCT if( addrSeek ) sqlite3VdbeJumpHere(v, addrSeek); #endif }else{ sqlite3VdbeResolveLabel(v, pLevel->addrCont); |
︙ | ︙ |
Changes to src/window.c.
︙ | ︙ | |||
1903 1904 1905 1906 1907 1908 1909 | sqlite3VdbeAddOp3(v, arith, regVal, reg1, reg1); sqlite3VdbeJumpHere(v, addrGe); if( pOrderBy->a[0].sortFlags & KEYINFO_ORDER_BIGNULL ){ int addr; addr = sqlite3VdbeAddOp1(v, OP_NotNull, reg1); VdbeCoverage(v); switch( op ){ case OP_Ge: sqlite3VdbeAddOp2(v, OP_Goto, 0, lbl); break; | > | > > > | > > | 1903 1904 1905 1906 1907 1908 1909 1910 1911 1912 1913 1914 1915 1916 1917 1918 1919 1920 1921 1922 1923 1924 | sqlite3VdbeAddOp3(v, arith, regVal, reg1, reg1); sqlite3VdbeJumpHere(v, addrGe); if( pOrderBy->a[0].sortFlags & KEYINFO_ORDER_BIGNULL ){ int addr; addr = sqlite3VdbeAddOp1(v, OP_NotNull, reg1); VdbeCoverage(v); switch( op ){ case OP_Ge: sqlite3VdbeAddOp2(v, OP_Goto, 0, lbl); break; case OP_Gt: sqlite3VdbeAddOp2(v, OP_NotNull, reg2, lbl); VdbeCoverage(v); break; case OP_Le: sqlite3VdbeAddOp2(v, OP_IsNull, reg2, lbl); VdbeCoverage(v); break; default: assert( op==OP_Lt ); /* no-op */ } sqlite3VdbeAddOp2(v, OP_Goto, 0, sqlite3VdbeCurrentAddr(v)+2); sqlite3VdbeJumpHere(v, addr); sqlite3VdbeAddOp2(v, OP_IsNull, reg2, lbl); VdbeCoverage(v); if( op==OP_Gt || op==OP_Ge ){ sqlite3VdbeChangeP2(v, -1, sqlite3VdbeCurrentAddr(v)+1); |
︙ | ︙ |