| line |
true |
false |
branch |
|
117
|
0 |
433 |
if( p->magic!=VDBE_MAGIC_RUN ){ |
|
121
|
0 |
433 |
if( sqliteSafetyOn(db) ){ |
|
125
|
0 |
433 |
if( p->explain ){ |
|
130
|
97 |
336 |
if( rc==SQLITE_DONE || rc==SQLITE_ROW ){ |
|
|
95 |
2 |
if( rc==SQLITE_DONE || rc==SQLITE_ROW ){ |
|
131
|
431 |
0 |
if( pazColName ) *pazColName = (const char**)p->azColName; |
|
132
|
431 |
0 |
if( pN ) *pN = p->nResColumn; |
|
134
|
2 |
0 |
if( pazColName) *pazColName = 0; |
|
135
|
2 |
0 |
if( pN ) *pN = 0; |
|
137
|
433 |
0 |
if( pazValue ){ |
|
138
|
95 |
338 |
if( rc==SQLITE_ROW ){ |
|
144
|
0 |
433 |
if( sqliteSafetyOff(db) ){ |
|
162
|
0 |
16 |
if( pElem==0 ) return 1; |
|
167
|
0 |
16 |
if( pOld!=0 ){ |
|
172
|
19 |
16 |
for(i=0, pMem=pElem->aMem; inMem; i++, pMem++){ |
|
185
|
0 |
0 |
if( pElem==0 ){ |
|
189
|
0 |
0 |
return pElem ? sqliteHashData(pElem) : 0; |
|
199
|
2 |
56 |
if( fg & MEM_Real ){ |
|
201
|
43 |
13 |
}else if( fg & MEM_Int ){ |
|
223
|
0 |
0 |
if( (fg & MEM_Str)==0 ){ |
|
228
|
0 |
0 |
if( z==0 ) return 1; |
|
252
|
0 |
0 |
if( z==0 ) return 1; |
|
271
|
1098 |
510 |
while( N>0 ){ |
|
273
|
102 |
996 |
Release(pTos); |
|
292
|
0 |
27 |
if( *zNum=='-' ){ |
|
295
|
0 |
27 |
}else if( *zNum=='+' ){ |
|
301
|
27 |
27 |
for(i=0; (c=zNum[i])>='0' && c<='9'; i++){ |
|
|
27 |
0 |
for(i=0; (c=zNum[i])>='0' && c<='9'; i++){ |
|
304
|
0 |
27 |
*pNum = neg ? -v : v; |
|
305
|
27 |
0 |
return c==0 && i>0 && (i<10 || (i==10 && memcmp(zNum,"2147483647",10)<=0)); |
|
|
27 |
0 |
return c==0 && i>0 && (i<10 || (i==10 && memcmp(zNum,"2147483647",10)<=0)); |
|
|
0 |
27 |
return c==0 && i>0 && (i<10 || (i==10 && memcmp(zNum,"2147483647",10)<=0)); |
|
|
0 |
0 |
return c==0 && i>0 && (i<10 || (i==10 && memcmp(zNum,"2147483647",10)<=0)); |
|
|
0 |
0 |
return c==0 && i>0 && (i<10 || (i==10 && memcmp(zNum,"2147483647",10)<=0)); |
|
317
|
0 |
0 |
if( pStack->flags & MEM_Real ){ |
|
319
|
0 |
0 |
Release(pStack); |
|
320
|
0 |
0 |
}else if( pStack->flags & MEM_Str ){ |
|
322
|
0 |
0 |
Release(pStack); |
|
337
|
0 |
0 |
if( pStack->flags & MEM_Str ){ |
|
339
|
0 |
0 |
}else if( pStack->flags & MEM_Int ){ |
|
360
|
31 |
150 |
while( pLeft && pRight ){ |
|
|
21 |
10 |
while( pLeft && pRight ){ |
|
362
|
10 |
11 |
if( c<=0 ){ |
|
371
|
10 |
150 |
if( pLeft ){ |
|
373
|
117 |
33 |
}else if( pRight ){ |
|
389
|
0 |
0 |
for(i=0; i
|
|
|
0 |
0 |
for(i=0; i
|
|
391
|
0 |
0 |
if( c=='\r' || c=='\n' ){ |
|
|
0 |
0 |
if( c=='\r' || c=='\n' ){ |
|
392
|
0 |
0 |
if( c=='\r' ){ |
|
395
|
0 |
0 |
if( c!=EOF && c!='\n' ) ungetc(c, in); |
|
|
0 |
0 |
if( c!=EOF && c!='\n' ) ungetc(c, in); |
|
402
|
0 |
0 |
return i>0 ? zBuf : 0; |
|
414
|
201 |
17 |
if( mxCursor>=p->nCursor ){ |
|
416
|
0 |
201 |
if( aCsr==0 ) return 1; |
|
502
|
0 |
433 |
if( p->magic!=VDBE_MAGIC_RUN ) return SQLITE_MISUSE; |
|
507
|
0 |
433 |
if( sqlite_malloc_failed ) goto no_mem; |
|
509
|
91 |
342 |
if( p->popStack ){ |
|
513
|
0 |
433 |
CHECK_FOR_INTERRUPT; |
|
514
|
4575 |
1 |
for(pc=p->pc; rc==SQLITE_OK; pc++){ |
|
550
|
0 |
4575 |
if( db->xProgress ){ |
|
551
|
0 |
0 |
if( db->nProgressOps==nProgressOps ){ |
|
552
|
0 |
0 |
if( db->xProgress(db->pProgressArg)!=0 ){ |
|
600
|
0 |
37 |
CHECK_FOR_INTERRUPT; |
|
616
|
0 |
0 |
if( p->returnDepth>=sizeof(p->returnStack)/sizeof(p->returnStack[0]) ){ |
|
633
|
0 |
0 |
if( p->returnDepth<=0 ){ |
|
663
|
1 |
336 |
if( pOp->p1!=SQLITE_OK ){ |
|
666
|
1 |
0 |
if( pOp->p3 ){ |
|
685
|
94 |
292 |
if( pOp->p3 ){ |
|
701
|
94 |
215 |
if( z==0 ){ |
|
723
|
0 |
0 |
if( j>=0 && jnVar && p->azVar[j]!=0 ){ |
|
|
0 |
0 |
if( j>=0 && jnVar && p->azVar[j]!=0 ){ |
|
|
0 |
0 |
if( j>=0 && jnVar && p->azVar[j]!=0 ){ |
|
764
|
31 |
49 |
if( pTos->flags & MEM_Str ){ |
|
765
|
31 |
0 |
if( pOp->p2 && (pTos->flags & (MEM_Dyn|MEM_Ephem)) ){ |
|
|
0 |
31 |
if( pOp->p2 && (pTos->flags & (MEM_Dyn|MEM_Ephem)) ){ |
|
768
|
0 |
31 |
}else if( pTos->flags & MEM_Short ){ |
|
771
|
0 |
31 |
}else if( (pTos->flags & MEM_Static)==0 ){ |
|
773
|
0 |
0 |
if( sqlite_malloc_failed ) goto no_mem; |
|
798
|
0 |
48 |
Deephemeralize(pTos); |
|
|
0 |
0 |
Deephemeralize(pTos); |
|
799
|
48 |
48 |
for(i=0; ip1; i++, pFrom++){ |
|
800
|
0 |
48 |
Deephemeralize(&pFrom[1]); |
|
|
0 |
0 |
Deephemeralize(&pFrom[1]); |
|
803
|
0 |
48 |
if( pFrom->flags & MEM_Short ){ |
|
810
|
3 |
45 |
if( pTos->flags & MEM_Short ){ |
|
828
|
0 |
0 |
Deephemeralize(pTos); |
|
|
0 |
0 |
Deephemeralize(pTos); |
|
829
|
0 |
0 |
Release(pTo); |
|
831
|
0 |
0 |
if( pTo->flags & MEM_Short ){ |
|
854
|
123 |
667 |
if( pOp->p2 ) p->nResColumn = pOp->p1+1; |
|
871
|
185 |
80 |
for(i=0; ip1; i++, pCol++){ |
|
872
|
17 |
168 |
if( pCol->flags & MEM_Null ){ |
|
875
|
18 |
150 |
Stringify(pCol); |
|
912
|
0 |
0 |
if( zSep==0 ) zSep = ""; |
|
917
|
0 |
0 |
for(i=0; i
|
|
918
|
0 |
0 |
if( pTerm->flags & MEM_Null ){ |
|
922
|
0 |
0 |
Stringify(pTerm); |
|
926
|
0 |
0 |
if( nByte<0 ){ |
|
927
|
0 |
0 |
if( pOp->p2==0 ){ |
|
935
|
0 |
0 |
if( zNew==0 ) goto no_mem; |
|
938
|
0 |
0 |
for(i=j=0; i
|
|
942
|
0 |
0 |
if( nSep>0 && i
|
|
|
0 |
0 |
if( nSep>0 && i
|
|
948
|
0 |
0 |
if( pOp->p2==0 ){ |
|
1011
|
0 |
0 |
if( ((pTos->flags | pNos->flags) & MEM_Null)!=0 ){ |
|
1012
|
0 |
0 |
Release(pTos); |
|
1014
|
0 |
0 |
Release(pTos); |
|
1016
|
0 |
0 |
}else if( (pTos->flags & pNos->flags & MEM_Int)==MEM_Int ){ |
|
1025
|
0 |
0 |
if( a==0 ) goto divide_by_zero; |
|
1030
|
0 |
0 |
if( a==0 ) goto divide_by_zero; |
|
1035
|
0 |
0 |
Release(pTos); |
|
1037
|
0 |
0 |
Release(pTos); |
|
1042
|
0 |
0 |
Realify(pTos); |
|
1043
|
0 |
0 |
Realify(pNos); |
|
1051
|
0 |
0 |
if( a==0.0 ) goto divide_by_zero; |
|
1058
|
0 |
0 |
if( ia==0.0 ) goto divide_by_zero; |
|
1063
|
0 |
0 |
Release(pTos); |
|
1065
|
0 |
0 |
Release(pTos); |
|
1072
|
0 |
0 |
Release(pTos); |
|
1074
|
0 |
0 |
Release(pTos); |
|
1096
|
92 |
65 |
for(i=0; i
|
|
1097
|
2 |
90 |
if( pArg->flags & MEM_Null ){ |
|
1100
|
0 |
90 |
Stringify(pArg); |
|
1109
|
0 |
65 |
if( sqliteSafetyOff(db) ) goto abort_due_to_misuse; |
|
1111
|
0 |
65 |
if( sqliteSafetyOn(db) ) goto abort_due_to_misuse; |
|
1115
|
24 |
41 |
if( pTos->flags & MEM_Short ){ |
|
1118
|
1 |
64 |
if( ctx.isError ){ |
|
1119
|
1 |
0 |
sqliteSetString(&p->zErrMsg, |
|
1162
|
0 |
0 |
if( (pTos->flags | pNos->flags) & MEM_Null ){ |
|
1168
|
0 |
0 |
Integerify(pTos); |
|
1169
|
0 |
0 |
Integerify(pNos); |
|
1182
|
0 |
0 |
Release(pTos); |
|
1197
|
0 |
0 |
Integerify(pTos); |
|
1215
|
0 |
0 |
if( (pTos->flags & (MEM_Int|MEM_Real))==0 |
|
1216
|
0 |
0 |
&& ((pTos->flags & MEM_Str)==0 || sqliteIsNumber(pTos->z)==0) ){ |
|
|
0 |
0 |
&& ((pTos->flags & MEM_Str)==0 || sqliteIsNumber(pTos->z)==0) ){ |
|
1217
|
0 |
0 |
Release(pTos); |
|
1222
|
0 |
0 |
if( pTos->flags & MEM_Int ){ |
|
1225
|
0 |
0 |
Realify(pTos); |
|
1227
|
0 |
0 |
if( pTos->r>(double)v ) v++; |
|
1228
|
0 |
0 |
if( pOp->p1 && pTos->r==(double)v ) v++; |
|
|
0 |
0 |
if( pOp->p1 && pTos->r==(double)v ) v++; |
|
1230
|
0 |
0 |
Release(pTos); |
|
1249
|
0 |
0 |
if( pTos->flags & MEM_Int ){ |
|
1251
|
0 |
0 |
}else if( pTos->flags & MEM_Real ){ |
|
1254
|
0 |
0 |
if( r!=pTos->r ){ |
|
1258
|
0 |
0 |
}else if( pTos->flags & MEM_Str ){ |
|
1260
|
0 |
0 |
if( !toInt(pTos->z, &v) ){ |
|
1262
|
0 |
0 |
if( !sqliteIsNumber(pTos->z) ){ |
|
1265
|
0 |
0 |
Realify(pTos); |
|
1268
|
0 |
0 |
if( r!=pTos->r ){ |
|
1276
|
0 |
0 |
Release(pTos); |
|
1281
|
0 |
0 |
if( pOp->p2==0 ){ |
|
1285
|
0 |
0 |
if( pOp->p1 ) popStack(&pTos, 1); |
|
1414
|
4 |
42 |
if( (ft | fn) & MEM_Null ){ |
|
1416
|
4 |
0 |
if( pOp->p2 ){ |
|
1417
|
4 |
0 |
if( pOp->p1 ) pc = pOp->p2-1; |
|
1423
|
0 |
42 |
}else if( (ft & fn & MEM_Int)==MEM_Int ){ |
|
1425
|
27 |
15 |
}else if( (ft & MEM_Int)!=0 && (fn & MEM_Str)!=0 && toInt(pNos->z,&v) ){ |
|
|
27 |
0 |
}else if( (ft & MEM_Int)!=0 && (fn & MEM_Str)!=0 && toInt(pNos->z,&v) ){ |
|
|
27 |
0 |
}else if( (ft & MEM_Int)!=0 && (fn & MEM_Str)!=0 && toInt(pNos->z,&v) ){ |
|
1427
|
0 |
15 |
}else if( (fn & MEM_Int)!=0 && (ft & MEM_Str)!=0 && toInt(pTos->z,&v) ){ |
|
|
0 |
0 |
}else if( (fn & MEM_Int)!=0 && (ft & MEM_Str)!=0 && toInt(pTos->z,&v) ){ |
|
|
0 |
0 |
}else if( (fn & MEM_Int)!=0 && (ft & MEM_Str)!=0 && toInt(pTos->z,&v) ){ |
|
1430
|
0 |
15 |
Stringify(pTos); |
|
1431
|
0 |
15 |
Stringify(pNos); |
|
1443
|
42 |
0 |
if( pOp->p2 ){ |
|
1444
|
10 |
32 |
if( c ) pc = pOp->p2-1; |
|
1568
|
0 |
0 |
if( (pNos->flags | pTos->flags) & MEM_Null ){ |
|
1570
|
0 |
0 |
if( pOp->p2 ){ |
|
1571
|
0 |
0 |
if( pOp->p1 ) pc = pOp->p2-1; |
|
1578
|
0 |
0 |
Stringify(pTos); |
|
1579
|
0 |
0 |
Stringify(pNos); |
|
1596
|
0 |
0 |
if( pOp->p2 ){ |
|
1597
|
0 |
0 |
if( c ) pc = pOp->p2-1; |
|
1624
|
0 |
0 |
if( pTos->flags & MEM_Null ){ |
|
1627
|
0 |
0 |
Integerify(pTos); |
|
1630
|
0 |
0 |
if( pNos->flags & MEM_Null ){ |
|
1633
|
0 |
0 |
Integerify(pNos); |
|
1636
|
0 |
0 |
if( pOp->opcode==OP_And ){ |
|
1645
|
0 |
0 |
if( v1==2 ){ |
|
1669
|
0 |
0 |
if( pTos->flags & MEM_Real ){ |
|
1670
|
0 |
0 |
Release(pTos); |
|
1671
|
0 |
0 |
if( pOp->opcode==OP_Negative || pTos->r<0.0 ){ |
|
|
0 |
0 |
if( pOp->opcode==OP_Negative || pTos->r<0.0 ){ |
|
1675
|
0 |
0 |
}else if( pTos->flags & MEM_Int ){ |
|
1676
|
0 |
0 |
Release(pTos); |
|
1677
|
0 |
0 |
if( pOp->opcode==OP_Negative || pTos->i<0 ){ |
|
|
0 |
0 |
if( pOp->opcode==OP_Negative || pTos->i<0 ){ |
|
1681
|
0 |
0 |
}else if( pTos->flags & MEM_Null ){ |
|
1684
|
0 |
0 |
Realify(pTos); |
|
1685
|
0 |
0 |
Release(pTos); |
|
1686
|
0 |
0 |
if( pOp->opcode==OP_Negative || pTos->r<0.0 ){ |
|
|
0 |
0 |
if( pOp->opcode==OP_Negative || pTos->r<0.0 ){ |
|
1702
|
0 |
0 |
if( pTos->flags & MEM_Null ) break; /* Do nothing to NULLs */ |
|
1703
|
0 |
0 |
Integerify(pTos); |
|
1704
|
0 |
0 |
Release(pTos); |
|
1718
|
0 |
0 |
if( pTos->flags & MEM_Null ) break; /* Do nothing to NULLs */ |
|
1719
|
0 |
0 |
Integerify(pTos); |
|
1720
|
0 |
0 |
Release(pTos); |
|
1759
|
0 |
26 |
if( pTos->flags & MEM_Null ){ |
|
1762
|
0 |
26 |
Integerify(pTos); |
|
1764
|
26 |
0 |
if( pOp->opcode==OP_IfNot ) c = !c; |
|
1768
|
16 |
10 |
if( c ) pc = pOp->p2-1; |
|
1782
|
0 |
0 |
if( cnt<0 ) cnt = -cnt; |
|
1785
|
0 |
0 |
for(i=0; i
|
|
1786
|
0 |
0 |
if( pTerm->flags & MEM_Null ){ |
|
1791
|
0 |
0 |
if( pOp->p1>0 ) popStack(&pTos, cnt); |
|
1804
|
34 |
33 |
if( cnt<0 ) cnt = -cnt; |
|
1806
|
67 |
63 |
for(i=0; i
|
|
|
63 |
4 |
for(i=0; i
|
|
1807
|
63 |
4 |
if( i>=cnt ) pc = pOp->p2-1; |
|
1808
|
33 |
34 |
if( pOp->p1>0 ) popStack(&pTos, cnt); |
|
1867
|
306 |
96 |
for(i=0; i
|
|
1868
|
15 |
291 |
if( pRec->flags & MEM_Null ){ |
|
1871
|
27 |
264 |
Stringify(pRec); |
|
1875
|
0 |
96 |
if( addUnique ) nByte += sizeof(p->uniqueCnt); |
|
1876
|
95 |
1 |
if( nByte + nField + 1 < 256 ){ |
|
1878
|
1 |
0 |
}else if( nByte + 2*nField + 2 < 65536 ){ |
|
1884
|
0 |
96 |
if( nByte>MAX_BYTES_PER_ROW ){ |
|
1888
|
44 |
52 |
if( nByte<=NBFS ){ |
|
1892
|
0 |
52 |
if( zNewRecord==0 ) goto no_mem; |
|
1896
|
306 |
96 |
for(i=0, pRec=&pTos[1-nField]; i
|
|
1898
|
2 |
304 |
if( idxWidth>1 ){ |
|
1900
|
0 |
2 |
if( idxWidth>2 ){ |
|
1904
|
291 |
15 |
if( (pRec->flags & MEM_Null)==0 ){ |
|
1909
|
1 |
95 |
if( idxWidth>1 ){ |
|
1911
|
0 |
1 |
if( idxWidth>2 ){ |
|
1915
|
0 |
96 |
if( addUnique ){ |
|
1920
|
306 |
96 |
for(i=0, pRec=&pTos[1-nField]; i
|
|
1921
|
291 |
15 |
if( (pRec->flags & MEM_Null)==0 ){ |
|
1929
|
44 |
52 |
if( nByte<=NBFS ){ |
|
2030
|
8 |
7 |
for(j=0, i=0; i
|
|
2034
|
1 |
7 |
if( flags & MEM_Null ){ |
|
2037
|
7 |
0 |
}else if( pOp->p3 && pOp->p3[j]=='t' ){ |
|
|
2 |
5 |
}else if( pOp->p3 && pOp->p3[j]=='t' ){ |
|
2038
|
0 |
2 |
Stringify(pRec); |
|
2041
|
4 |
1 |
}else if( (flags & (MEM_Real|MEM_Int))!=0 || sqliteIsNumber(pRec->z) ){ |
|
|
3 |
1 |
}else if( (flags & (MEM_Real|MEM_Int))!=0 || sqliteIsNumber(pRec->z) ){ |
|
2042
|
1 |
3 |
if( (flags & (MEM_Real|MEM_Int))==MEM_Int ){ |
|
2044
|
3 |
0 |
}else if( (flags & (MEM_Real|MEM_Int))==0 ){ |
|
2047
|
0 |
4 |
Release(pRec); |
|
2059
|
0 |
7 |
if( nByte+sizeof(u32)>MAX_BYTES_PER_ROW ){ |
|
2063
|
4 |
3 |
if( addRowid ) nByte += sizeof(u32); |
|
2064
|
7 |
0 |
if( nByte<=NBFS ){ |
|
2068
|
0 |
0 |
if( zNewKey==0 ) goto no_mem; |
|
2072
|
8 |
7 |
for(i=0; i
|
|
2073
|
1 |
7 |
if( pRec->flags & MEM_Null ){ |
|
2076
|
4 |
3 |
}else if( pRec->flags==MEM_Real ){ |
|
2087
|
4 |
3 |
if( addRowid ){ |
|
2091
|
0 |
4 |
Integerify(pRec); |
|
2095
|
2 |
2 |
if( pOp->p2 && containsNull ) pc = pOp->p2 - 1; |
|
|
0 |
2 |
if( pOp->p2 && containsNull ) pc = pOp->p2 - 1; |
|
2097
|
3 |
0 |
if( pOp->p2==0 ) popStack(&pTos, nField); |
|
2101
|
7 |
0 |
if( nByte<=NBFS ){ |
|
2146
|
0 |
0 |
if( i>=0 && inDb && db->aDb[i].pBt && db->aDb[i].inTrans==1 ){ |
|
|
0 |
0 |
if( i>=0 && inDb && db->aDb[i].pBt && db->aDb[i].inTrans==1 ){ |
|
|
0 |
0 |
if( i>=0 && inDb && db->aDb[i].pBt && db->aDb[i].inTrans==1 ){ |
|
|
0 |
0 |
if( i>=0 && inDb && db->aDb[i].pBt && db->aDb[i].inTrans==1 ){ |
|
2148
|
0 |
0 |
if( rc==SQLITE_OK ) db->aDb[i].inTrans = 2; |
|
2173
|
0 |
153 |
if( db->aDb[i].inTrans ) break; |
|
2174
|
306 |
0 |
while( db->aDb[i].pBt!=0 && busy ){ |
|
|
153 |
153 |
while( db->aDb[i].pBt!=0 && busy ){ |
|
2178
|
0 |
0 |
if( db->xBusyCallback==0 ){ |
|
2184
|
0 |
0 |
}else if( (*db->xBusyCallback)(db->pBusyArg, "", busy++)==0 ){ |
|
2219
|
0 |
73 |
if( db->xCommitCallback!=0 ){ |
|
2220
|
0 |
0 |
if( sqliteSafetyOff(db) ) goto abort_due_to_misuse; |
|
2221
|
0 |
0 |
if( db->xCommitCallback(db->pCommitArg)!=0 ){ |
|
2224
|
0 |
0 |
if( sqliteSafetyOn(db) ) goto abort_due_to_misuse; |
|
2226
|
219 |
0 |
for(i=0; rc==SQLITE_OK && inDb; i++){ |
|
|
146 |
73 |
for(i=0; rc==SQLITE_OK && inDb; i++){ |
|
2227
|
143 |
3 |
if( db->aDb[i].inTrans ){ |
|
2232
|
73 |
0 |
if( rc==SQLITE_OK ){ |
|
2299
|
0 |
53 |
Integerify(pTos) |
|
2301
|
53 |
0 |
if( rc==SQLITE_OK ){ |
|
2305
|
0 |
53 |
Release(pTos); |
|
2330
|
147 |
0 |
if( rc==SQLITE_OK && aMeta[1]!=pOp->p2 ){ |
|
|
0 |
147 |
if( rc==SQLITE_OK && aMeta[1]!=pOp->p2 ){ |
|
2391
|
0 |
215 |
Integerify(pTos); |
|
2398
|
1 |
214 |
if( p2<=0 ){ |
|
2400
|
0 |
1 |
Integerify(pTos); |
|
2403
|
0 |
1 |
if( p2<2 ){ |
|
2410
|
0 |
215 |
if( expandCursorArraySize(p, i) ) goto no_mem; |
|
2414
|
0 |
215 |
if( pX==0 ) break; |
|
2419
|
0 |
0 |
if( db->xBusyCallback==0 ){ |
|
2422
|
0 |
0 |
p->pTos = &pTos[1 + (pOp->p2<=0)]; /* Operands must remain on stack */ |
|
2424
|
0 |
0 |
}else if( (*db->xBusyCallback)(db->pBusyArg, pOp->p3, ++busy)==0 ){ |
|
2438
|
0 |
215 |
}while( busy ); |
|
2464
|
0 |
3 |
if( expandCursorArraySize(p, i) ) goto no_mem; |
|
2471
|
3 |
0 |
if( rc==SQLITE_OK ){ |
|
2474
|
3 |
0 |
if( rc==SQLITE_OK ){ |
|
2475
|
0 |
3 |
if( pOp->p2 ){ |
|
2478
|
0 |
0 |
if( rc==SQLITE_OK ){ |
|
2502
|
0 |
0 |
if( expandCursorArraySize(p, i) ) goto no_mem; |
|
2518
|
198 |
0 |
if( i>=0 && inCursor ){ |
|
|
198 |
0 |
if( i>=0 && inCursor ){ |
|
2553
|
0 |
0 |
if( pC->pCursor!=0 ){ |
|
2556
|
0 |
0 |
if( pTos->flags & MEM_Int ){ |
|
2558
|
0 |
0 |
if( pOp->p2==0 && pOp->opcode==OP_MoveTo ){ |
|
|
0 |
0 |
if( pOp->p2==0 && pOp->opcode==OP_MoveTo ){ |
|
2561
|
0 |
0 |
Release(pTos); |
|
2569
|
0 |
0 |
Stringify(pTos); |
|
2576
|
0 |
0 |
if( oc==OP_MoveTo && res<0 ){ |
|
|
0 |
0 |
if( oc==OP_MoveTo && res<0 ){ |
|
2579
|
0 |
0 |
if( res && pOp->p2>0 ){ |
|
|
0 |
0 |
if( res && pOp->p2>0 ){ |
|
2582
|
0 |
0 |
}else if( oc==OP_MoveLt ){ |
|
2583
|
0 |
0 |
if( res>=0 ){ |
|
2591
|
0 |
0 |
res = sqliteBtreeKeySize(pC->pCursor,&keysize)!=0 || keysize==0; |
|
|
0 |
0 |
res = sqliteBtreeKeySize(pC->pCursor,&keysize)!=0 || keysize==0; |
|
2593
|
0 |
0 |
if( res && pOp->p2>0 ){ |
|
|
0 |
0 |
if( res && pOp->p2>0 ){ |
|
2598
|
0 |
0 |
Release(pTos); |
|
2644
|
0 |
0 |
if( (pC = &p->aCsr[i])->pCursor!=0 ){ |
|
2646
|
0 |
0 |
Stringify(pTos); |
|
2648
|
0 |
0 |
alreadyExists = rx==SQLITE_OK && res==0; |
|
|
0 |
0 |
alreadyExists = rx==SQLITE_OK && res==0; |
|
2651
|
0 |
0 |
if( pOp->opcode==OP_Found ){ |
|
2652
|
0 |
0 |
if( alreadyExists ) pc = pOp->p2 - 1; |
|
2654
|
0 |
0 |
if( !alreadyExists ) pc = pOp->p2 - 1; |
|
2656
|
0 |
0 |
if( pOp->opcode!=OP_Distinct ){ |
|
2657
|
0 |
0 |
Release(pTos); |
|
2692
|
0 |
2 |
Integerify(pTos); |
|
2696
|
2 |
0 |
if( (pCrsr = p->aCsr[i].pCursor)!=0 ){ |
|
2704
|
0 |
2 |
Stringify(pNos); |
|
2714
|
0 |
2 |
if( rc!=SQLITE_OK ) goto abort_due_to_error; |
|
2715
|
1 |
1 |
if( res<0 ){ |
|
2717
|
1 |
0 |
if( res ){ |
|
2723
|
0 |
1 |
if( rc!=SQLITE_OK ) goto abort_due_to_error; |
|
2724
|
0 |
1 |
if( res>0 ){ |
|
2736
|
0 |
1 |
if( v==R ){ |
|
2771
|
6 |
0 |
if( (pCrsr = p->aCsr[i].pCursor)!=0 ){ |
|
2779
|
6 |
0 |
if( rx!=SQLITE_OK || res!=0 ){ |
|
|
0 |
6 |
if( rx!=SQLITE_OK || res!=0 ){ |
|
2784
|
0 |
6 |
Release(pTos); |
|
2801
|
0 |
97 |
if( (pC = &p->aCsr[i])->pCursor==0 ){ |
|
2837
|
97 |
0 |
if( !pC->useRandomRowid ){ |
|
2838
|
27 |
70 |
if( pC->nextRowidValid ){ |
|
2842
|
35 |
35 |
if( res ){ |
|
2847
|
0 |
35 |
if( v==0x7fffffff ){ |
|
2854
|
97 |
0 |
if( v<0x7fffffff ){ |
|
2861
|
0 |
97 |
if( pC->useRandomRowid ){ |
|
2865
|
0 |
0 |
if( v==0 || cnt>2 ){ |
|
|
0 |
0 |
if( v==0 || cnt>2 ){ |
|
2867
|
0 |
0 |
if( cnt<5 ) v &= 0xffffff; |
|
2873
|
0 |
0 |
if( v==0 ) continue; |
|
2877
|
0 |
0 |
}while( cnt<1000 && rx==SQLITE_OK && res==0 ); |
|
|
0 |
0 |
}while( cnt<1000 && rx==SQLITE_OK && res==0 ); |
|
|
0 |
0 |
}while( cnt<1000 && rx==SQLITE_OK && res==0 ); |
|
2879
|
0 |
0 |
if( rx==SQLITE_OK && res==0 ){ |
|
|
0 |
0 |
if( rx==SQLITE_OK && res==0 ){ |
|
2925
|
0 |
118 |
if( ((pC = &p->aCsr[i])->pCursor!=0 || pC->pseudoTable) ){ |
|
|
0 |
0 |
if( ((pC = &p->aCsr[i])->pCursor!=0 || pC->pseudoTable) ){ |
|
2928
|
0 |
118 |
if( pOp->opcode==OP_PutStrKey ){ |
|
2929
|
0 |
0 |
Stringify(pNos); |
|
2937
|
43 |
75 |
if( pOp->p2 & OPFLAG_NCHANGE ) db->nChange++; |
|
2938
|
43 |
75 |
if( pOp->p2 & OPFLAG_LASTROWID ) db->lastRowid = pNos->i; |
|
2939
|
43 |
75 |
if( pOp->p2 & OPFLAG_CSCHANGE ) db->csChange++; |
|
2940
|
118 |
0 |
if( pC->nextRowidValid && pTos->i>=pC->nextRowid ){ |
|
|
1 |
117 |
if( pC->nextRowidValid && pTos->i>=pC->nextRowid ){ |
|
2944
|
22 |
96 |
if( pTos->flags & MEM_Null ){ |
|
2950
|
0 |
118 |
if( pC->pseudoTable ){ |
|
2959
|
0 |
0 |
if( pTos->flags & MEM_Dyn ){ |
|
2964
|
0 |
0 |
if( pC->pData ){ |
|
2999
|
17 |
0 |
if( pC->pCursor!=0 ){ |
|
3004
|
6 |
11 |
if( pOp->p2 & OPFLAG_NCHANGE ) db->nChange++; |
|
3005
|
6 |
11 |
if( pOp->p2 & OPFLAG_CSCHANGE ) db->csChange++; |
|
3061
|
0 |
0 |
if( pC->nullRow ){ |
|
3063
|
0 |
0 |
}else if( pC->pCursor!=0 ){ |
|
3066
|
0 |
0 |
if( pC->nullRow ){ |
|
3069
|
0 |
0 |
}else if( pC->keyAsData || pOp->opcode==OP_RowKey ){ |
|
|
0 |
0 |
}else if( pC->keyAsData || pOp->opcode==OP_RowKey ){ |
|
3075
|
0 |
0 |
if( n<=NBFS ){ |
|
3080
|
0 |
0 |
if( z==0 ) goto no_mem; |
|
3084
|
0 |
0 |
if( pC->keyAsData || pOp->opcode==OP_RowKey ){ |
|
|
0 |
0 |
if( pC->keyAsData || pOp->opcode==OP_RowKey ){ |
|
3089
|
0 |
0 |
}else if( pC->pseudoTable ){ |
|
3130
|
0 |
386 |
if( i<0 ){ |
|
3135
|
386 |
0 |
}else if( (pC = &p->aCsr[i])->pCursor!=0 ){ |
|
3139
|
0 |
386 |
if( pC->nullRow ){ |
|
3141
|
0 |
386 |
}else if( pC->keyAsData ){ |
|
3146
|
0 |
0 |
}else if( pC->pseudoTable ){ |
|
3157
|
0 |
386 |
if( payloadSize==0 ){ |
|
3160
|
383 |
3 |
}else if( payloadSize<256 ){ |
|
3162
|
3 |
0 |
}else if( payloadSize<65536 ){ |
|
3170
|
0 |
386 |
if( payloadSize < idxWidth*(p2+1) ){ |
|
3174
|
0 |
386 |
if( zRec ){ |
|
3176
|
0 |
386 |
}else if( pC->keyAsData ){ |
|
3183
|
3 |
383 |
if( idxWidth>1 ){ |
|
3186
|
0 |
3 |
if( idxWidth>2 ){ |
|
3192
|
386 |
0 |
if( amt<0 || offset<0 || end>payloadSize ){ |
|
|
386 |
0 |
if( amt<0 || offset<0 || end>payloadSize ){ |
|
|
0 |
386 |
if( amt<0 || offset<0 || end>payloadSize ){ |
|
3201
|
18 |
368 |
if( amt==0 ){ |
|
3203
|
0 |
368 |
}else if( zRec ){ |
|
3207
|
333 |
35 |
if( amt<=NBFS ){ |
|
3212
|
0 |
35 |
if( z==0 ) goto no_mem; |
|
3216
|
0 |
368 |
if( pC->keyAsData ){ |
|
3241
|
0 |
8 |
if( pC->recnoIsValid ){ |
|
3243
|
0 |
8 |
}else if( pC->pseudoTable ){ |
|
3245
|
8 |
0 |
}else if( pC->nullRow || pC->pCursor==0 ){ |
|
|
0 |
8 |
}else if( pC->nullRow || pC->pCursor==0 ){ |
|
3277
|
0 |
0 |
if( (pCrsr = p->aCsr[i].pCursor)!=0 ){ |
|
3283
|
0 |
0 |
if( amt<=0 ){ |
|
3287
|
0 |
0 |
if( amt>NBFS ){ |
|
3289
|
0 |
0 |
if( z==0 ) goto no_mem; |
|
3332
|
0 |
0 |
if( (pCrsr = pC->pCursor)!=0 ){ |
|
3337
|
0 |
0 |
if( res && pOp->p2>0 ){ |
|
|
0 |
0 |
if( res && pOp->p2>0 ){ |
|
3361
|
141 |
0 |
if( (pCrsr = pC->pCursor)!=0 ){ |
|
3367
|
72 |
69 |
if( res && pOp->p2>0 ){ |
|
|
72 |
0 |
if( res && pOp->p2>0 ){ |
|
3397
|
0 |
167 |
CHECK_FOR_INTERRUPT; |
|
3400
|
167 |
0 |
if( (pCrsr = pC->pCursor)!=0 ){ |
|
3402
|
0 |
167 |
if( pC->nullRow ){ |
|
3406
|
167 |
0 |
rc = pOp->opcode==OP_Next ? sqliteBtreeNext(pCrsr, &res) : |
|
3410
|
102 |
65 |
if( res==0 ){ |
|
3438
|
3 |
0 |
if( (pCrsr = p->aCsr[i].pCursor)!=0 ){ |
|
3441
|
2 |
1 |
if( pOp->p2 ){ |
|
3445
|
0 |
2 |
if( rc!=SQLITE_OK ) goto abort_due_to_error; |
|
3446
|
4 |
0 |
while( res!=0 ){ |
|
3449
|
1 |
3 |
if( n==nKey |
|
3450
|
1 |
0 |
&& sqliteBtreeKeyCompare(pCrsr, zKey, nKey-4, 4, &c)==SQLITE_OK |
|
3451
|
0 |
1 |
&& c==0 |
|
3454
|
0 |
0 |
if( pOp->p3 && pOp->p3[0] ){ |
|
|
0 |
0 |
if( pOp->p3 && pOp->p3[0] ){ |
|
3459
|
2 |
2 |
if( res<0 ){ |
|
3470
|
0 |
3 |
Release(pTos); |
|
3486
|
0 |
0 |
if( (pCrsr = p->aCsr[i].pCursor)!=0 ){ |
|
3489
|
0 |
0 |
if( rx==SQLITE_OK && res==0 ){ |
|
|
0 |
0 |
if( rx==SQLITE_OK && res==0 ){ |
|
3494
|
0 |
0 |
Release(pTos); |
|
3514
|
0 |
0 |
if( (pCrsr = p->aCsr[i].pCursor)!=0 ){ |
|
3519
|
0 |
0 |
if( sz
|
|
3566
|
0 |
0 |
if( (pCrsr = p->aCsr[i].pCursor)!=0 ){ |
|
3569
|
0 |
0 |
Stringify(pTos); |
|
3572
|
0 |
0 |
if( rc!=SQLITE_OK ){ |
|
3575
|
0 |
0 |
if( pOp->opcode==OP_IdxLT ){ |
|
3577
|
0 |
0 |
}else if( pOp->opcode==OP_IdxGE ){ |
|
3580
|
0 |
0 |
if( res>0 ){ |
|
3584
|
0 |
0 |
Release(pTos); |
|
3607
|
0 |
0 |
for(k=0; k0; i--){ |
|
|
0 |
0 |
for(k=0; k0; i--){ |
|
3608
|
0 |
0 |
if( z[k]=='a' ){ |
|
3612
|
0 |
0 |
while( k
|
|
|
0 |
0 |
while( k
|
|
3615
|
0 |
0 |
Release(pTos); |
|
3684
|
22 |
5 |
if( pOp->opcode==OP_CreateTable ){ |
|
3690
|
27 |
0 |
if( rc==SQLITE_OK ){ |
|
3731
|
0 |
0 |
if( aRoot==0 ) goto no_mem; |
|
3732
|
0 |
0 |
for(j=0, i=sqliteHashFirst(&pSet->hash); i; i=sqliteHashNext(i), j++){ |
|
3739
|
0 |
0 |
if( z==0 || z[0]==0 ){ |
|
|
0 |
0 |
if( z==0 || z[0]==0 ){ |
|
3740
|
0 |
0 |
if( z ) sqliteFree(z); |
|
3762
|
2 |
4 |
if( pKeylist==0 || pKeylist->nUsed>=pKeylist->nKey ){ |
|
|
0 |
2 |
if( pKeylist==0 || pKeylist->nUsed>=pKeylist->nKey ){ |
|
3764
|
0 |
4 |
if( pKeylist==0 ) goto no_mem; |
|
3771
|
0 |
6 |
Integerify(pTos); |
|
3773
|
0 |
6 |
Release(pTos); |
|
3788
|
4 |
6 |
while( p->pList ){ |
|
3806
|
0 |
12 |
CHECK_FOR_INTERRUPT; |
|
3808
|
6 |
6 |
if( pKeylist!=0 ){ |
|
3815
|
4 |
2 |
if( pKeylist->nRead>=pKeylist->nUsed ){ |
|
3830
|
0 |
6 |
if( p->pList ){ |
|
3847
|
0 |
0 |
if( p->keylistStack==0 ) goto no_mem; |
|
3864
|
0 |
0 |
if( p->keylistStackDepth == 0 ){ |
|
3882
|
0 |
0 |
if( p->contextStack==0 ) goto no_mem; |
|
3901
|
0 |
0 |
if( p->contextStackDepth == 0 ){ |
|
3918
|
0 |
15 |
if( Dynamicify(pTos) || Dynamicify(pNos) ) goto no_mem; |
|
|
0 |
0 |
if( Dynamicify(pTos) || Dynamicify(pNos) ) goto no_mem; |
|
|
0 |
15 |
if( Dynamicify(pTos) || Dynamicify(pNos) ) goto no_mem; |
|
|
0 |
0 |
if( Dynamicify(pTos) || Dynamicify(pNos) ) goto no_mem; |
|
3920
|
0 |
15 |
if( pSorter==0 ) goto no_mem; |
|
3951
|
70 |
15 |
for(i=0; i
|
|
3952
|
37 |
33 |
if( (pRec->flags & MEM_Null)==0 ){ |
|
3953
|
0 |
37 |
Stringify(pRec); |
|
3959
|
0 |
15 |
if( azArg==0 ) goto no_mem; |
|
3961
|
70 |
15 |
for(pRec=&pTos[1-nField], i=0; i
|
|
3962
|
33 |
37 |
if( pRec->flags & MEM_Null ){ |
|
4003
|
35 |
15 |
for(i=0; i
|
|
4004
|
10 |
25 |
if( pRec->flags & MEM_Null ){ |
|
4007
|
0 |
25 |
Stringify(pRec); |
|
4012
|
0 |
15 |
if( zNewKey==0 ) goto no_mem; |
|
4015
|
35 |
15 |
for(pRec=&pTos[1-nField], i=0; i
|
|
4016
|
10 |
25 |
if( pRec->flags & MEM_Null ){ |
|
4046
|
150 |
5 |
for(i=0; i
|
|
4049
|
15 |
5 |
while( p->pSort ){ |
|
4053
|
25 |
0 |
for(i=0; i
|
|
4054
|
15 |
10 |
if( apSorter[i]==0 ){ |
|
4062
|
0 |
15 |
if( i>=NSORT-1 ){ |
|
4067
|
150 |
5 |
for(i=0; i
|
|
4083
|
0 |
20 |
CHECK_FOR_INTERRUPT; |
|
4084
|
15 |
5 |
if( pSorter!=0 ){ |
|
4133
|
0 |
0 |
if( p->pFile ){ |
|
4134
|
0 |
0 |
if( p->pFile!=stdin ) fclose(p->pFile); |
|
4137
|
0 |
0 |
if( sqliteStrICmp(pOp->p3,"stdin")==0 ){ |
|
4142
|
0 |
0 |
if( p->pFile==0 ){ |
|
4165
|
0 |
0 |
CHECK_FOR_INTERRUPT; |
|
4166
|
0 |
0 |
if( p->pFile==0 ) goto fileread_jump; |
|
4168
|
0 |
0 |
if( nField<=0 ) goto fileread_jump; |
|
4169
|
0 |
0 |
if( nField!=p->nField || p->azField==0 ){ |
|
|
0 |
0 |
if( nField!=p->nField || p->azField==0 ){ |
|
4171
|
0 |
0 |
if( azField==0 ){ goto no_mem; } |
|
4177
|
0 |
0 |
while( eol==0 ){ |
|
4178
|
0 |
0 |
if( p->zLine==0 || n+200>p->nLineAlloc ){ |
|
|
0 |
0 |
if( p->zLine==0 || n+200>p->nLineAlloc ){ |
|
4182
|
0 |
0 |
if( zLine==0 ){ |
|
4190
|
0 |
0 |
if( vdbe_fgets(&p->zLine[n], p->nLineAlloc-n, p->pFile)==0 ){ |
|
4195
|
0 |
0 |
while( (c = p->zLine[n])!=0 ){ |
|
4196
|
0 |
0 |
if( c=='\\' ){ |
|
4197
|
0 |
0 |
if( p->zLine[n+1]==0 ) break; |
|
4199
|
0 |
0 |
}else if( c=='\n' ){ |
|
4209
|
0 |
0 |
if( n==0 ) goto fileread_jump; |
|
4211
|
0 |
0 |
if( z[0]=='\\' && z[1]=='.' && z[2]==0 ){ |
|
|
0 |
0 |
if( z[0]=='\\' && z[1]=='.' && z[2]==0 ){ |
|
|
0 |
0 |
if( z[0]=='\\' && z[1]=='.' && z[2]==0 ){ |
|
4215
|
0 |
0 |
if( zDelim==0 ) zDelim = "\t"; |
|
4219
|
0 |
0 |
for(i=1; *z!=0 && i<=nField; i++){ |
|
|
0 |
0 |
for(i=1; *z!=0 && i<=nField; i++){ |
|
4222
|
0 |
0 |
if( z[0]=='\\' && z[1]=='N' |
|
|
0 |
0 |
if( z[0]=='\\' && z[1]=='N' |
|
4223
|
0 |
0 |
&& (z[2]==0 || strncmp(&z[2],zDelim,nDelim)==0) ){ |
|
|
0 |
0 |
&& (z[2]==0 || strncmp(&z[2],zDelim,nDelim)==0) ){ |
|
4224
|
0 |
0 |
if( i<=nField ) p->azField[i-1] = 0; |
|
4226
|
0 |
0 |
if( iazField[i] = z; |
|
4229
|
0 |
0 |
while( z[from] ){ |
|
4230
|
0 |
0 |
if( z[from]=='\\' && z[from+1]!=0 ){ |
|
|
0 |
0 |
if( z[from]=='\\' && z[from+1]!=0 ){ |
|
4245
|
0 |
0 |
if( z[from]==c && strncmp(&z[from],zDelim,nDelim)==0 ) break; |
|
|
0 |
0 |
if( z[from]==c && strncmp(&z[from],zDelim,nDelim)==0 ) break; |
|
4248
|
0 |
0 |
if( z[from] ){ |
|
4251
|
0 |
0 |
if( iazField[i] = z; |
|
4257
|
0 |
0 |
while( i
|
|
4278
|
0 |
0 |
if( p->azField ){ |
|
4284
|
0 |
0 |
if( z ){ |
|
4308
|
11 |
0 |
if( i>=p->nMem ){ |
|
4313
|
0 |
11 |
if( aMem==0 ) goto no_mem; |
|
4314
|
11 |
0 |
if( aMem!=p->aMem ){ |
|
4316
|
0 |
11 |
for(j=0; j
|
|
4317
|
0 |
0 |
if( aMem[j].flags & MEM_Short ){ |
|
4323
|
11 |
0 |
if( nOldnMem ){ |
|
4327
|
0 |
11 |
Deephemeralize(pTos); |
|
|
0 |
0 |
Deephemeralize(pTos); |
|
4329
|
0 |
11 |
Release(pMem); |
|
4331
|
0 |
11 |
if( pMem->flags & MEM_Dyn ){ |
|
4332
|
0 |
0 |
if( pOp->p2 ){ |
|
4336
|
0 |
0 |
if( pMem->z==0 ) goto no_mem; |
|
4339
|
0 |
11 |
}else if( pMem->flags & MEM_Short ){ |
|
4342
|
11 |
0 |
if( pOp->p2 ){ |
|
4343
|
0 |
11 |
Release(pTos); |
|
4363
|
11 |
0 |
if( pTos->flags & MEM_Str ){ |
|
4386
|
0 |
0 |
if( pOp->p2>0 && pMem->i>0 ){ |
|
|
0 |
0 |
if( pOp->p2>0 && pMem->i>0 ){ |
|
4401
|
0 |
15 |
if( p->agg.apFunc==0 ) goto no_mem; |
|
4440
|
6 |
24 |
for(i=0; i
|
|
4441
|
2 |
4 |
if( pRec->flags & MEM_Null ){ |
|
4444
|
0 |
4 |
Stringify(pRec); |
|
4461
|
0 |
24 |
if( ctx.isError ){ |
|
4487
|
13 |
3 |
Stringify(pTos); |
|
4491
|
0 |
16 |
if( pElem ){ |
|
4496
|
0 |
16 |
if( sqlite_malloc_failed ) goto no_mem; |
|
4498
|
0 |
16 |
Release(pTos); |
|
4509
|
3 |
0 |
AggElem *pFocus = AggInFocus(p->agg); |
|
4513
|
0 |
3 |
if( pFocus==0 ) goto no_mem; |
|
4515
|
0 |
3 |
Deephemeralize(pTos); |
|
|
0 |
0 |
Deephemeralize(pTos); |
|
4517
|
0 |
3 |
Release(pMem); |
|
4519
|
0 |
3 |
if( pMem->flags & MEM_Dyn ){ |
|
4521
|
2 |
1 |
}else if( pMem->flags & MEM_Short ){ |
|
4524
|
0 |
3 |
Release(pTos); |
|
4536
|
16 |
0 |
AggElem *pFocus = AggInFocus(p->agg); |
|
4539
|
0 |
16 |
if( pFocus==0 ) goto no_mem; |
|
4544
|
0 |
16 |
if( pTos->flags & MEM_Str ){ |
|
4564
|
0 |
31 |
CHECK_FOR_INTERRUPT; |
|
4565
|
15 |
16 |
if( p->agg.pSearch==0 ){ |
|
4570
|
15 |
16 |
if( p->agg.pSearch==0 ){ |
|
4578
|
19 |
16 |
for(i=0; iagg.nMem; i++){ |
|
4580
|
3 |
16 |
if( p->agg.apFunc[i]==0 ) continue; |
|
4581
|
0 |
16 |
if( p->agg.apFunc[i]->xFinalize==0 ) continue; |
|
4585
|
10 |
6 |
freeCtx = aMem[i].z && aMem[i].z!=aMem[i].zShort; |
|
|
0 |
10 |
freeCtx = aMem[i].z && aMem[i].z!=aMem[i].zShort; |
|
4590
|
0 |
16 |
if( freeCtx ){ |
|
4594
|
0 |
16 |
if( aMem[i].flags & MEM_Short ){ |
|
4610
|
6 |
6 |
if( p->nSet<=i ){ |
|
4613
|
0 |
6 |
if( aSet==0 ) goto no_mem; |
|
4615
|
6 |
6 |
for(k=p->nSet; k<=i; k++){ |
|
4620
|
12 |
0 |
if( pOp->p3 ){ |
|
4624
|
0 |
0 |
Stringify(pTos); |
|
4626
|
0 |
0 |
Release(pTos); |
|
4629
|
0 |
12 |
if( sqlite_malloc_failed ) goto no_mem; |
|
4642
|
0 |
0 |
Stringify(pTos); |
|
4643
|
0 |
0 |
if( i>=0 && inSet && sqliteHashFind(&p->aSet[i].hash, pTos->z, pTos->n)){ |
|
|
0 |
0 |
if( i>=0 && inSet && sqliteHashFind(&p->aSet[i].hash, pTos->z, pTos->n)){ |
|
|
0 |
0 |
if( i>=0 && inSet && sqliteHashFind(&p->aSet[i].hash, pTos->z, pTos->n)){ |
|
4646
|
0 |
0 |
Release(pTos); |
|
4660
|
0 |
34 |
Stringify(pTos); |
|
4661
|
34 |
0 |
if( i<0 || i>=p->nSet || |
|
4665
|
0 |
34 |
Release(pTos); |
|
4685
|
0 |
0 |
CHECK_FOR_INTERRUPT; |
|
4686
|
0 |
0 |
if( pOp->p1<0 || pOp->p1>=p->nSet ){ |
|
|
0 |
0 |
if( pOp->p1<0 || pOp->p1>=p->nSet ){ |
|
4687
|
0 |
0 |
if( pOp->opcode==OP_SetFirst ) pc = pOp->p2 - 1; |
|
4691
|
0 |
0 |
if( pOp->opcode==OP_SetFirst ){ |
|
4693
|
0 |
0 |
if( pSet->prev==0 ){ |
|
4698
|
0 |
0 |
if( pSet->prev ){ |
|
4701
|
0 |
0 |
if( pSet->prev==0 ){ |
|
4721
|
0 |
0 |
if( sqliteSafetyOff(db) ) goto abort_due_to_misuse; |
|
4723
|
0 |
0 |
if( sqliteSafetyOn(db) ) goto abort_due_to_misuse; |
|
4749
|
0 |
0 |
Integerify(pTos); |
|
4869
|
0 |
1 |
CHECK_FOR_INTERRUPT |
|
4870
|
1 |
0 |
if( rc ){ |
|
4898
|
0 |
0 |
if( p->zErrMsg==0 ){ |
|
4899
|
0 |
0 |
if( sqlite_malloc_failed ) rc = SQLITE_NOMEM; |
|
4910
|
0 |
0 |
if( db->magic!=SQLITE_MAGIC_BUSY ){ |