aboutsummaryrefslogtreecommitdiff
path: root/src/vdbeblob.c
diff options
context:
space:
mode:
authordrh <drh@noemail.net>2013-11-20 21:51:33 +0000
committerdrh <drh@noemail.net>2013-11-20 21:51:33 +0000
commit14da87f8c5d78b59303e1415a445b9461cf59b7a (patch)
tree8ba8563fc776f06f3bcff4439ca69ff0d833d6b7 /src/vdbeblob.c
parent380d68513316fa6fabd50f222ed8c5d68fc7376d (diff)
downloadsqlite-14da87f8c5d78b59303e1415a445b9461cf59b7a.tar.gz
sqlite-14da87f8c5d78b59303e1415a445b9461cf59b7a.zip
Reduce the size of the VdbeCursor object from 144 to 120 bytes.
FossilOrigin-Name: 5f9d50688508affd0bc8e4d52e21dacfacdbb5ce
Diffstat (limited to 'src/vdbeblob.c')
-rw-r--r--src/vdbeblob.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/src/vdbeblob.c b/src/vdbeblob.c
index a90c5b0af..7859d4a6c 100644
--- a/src/vdbeblob.c
+++ b/src/vdbeblob.c
@@ -64,7 +64,8 @@ static int blobSeekToRow(Incrblob *p, sqlite3_int64 iRow, char **pzErr){
rc = sqlite3_step(p->pStmt);
if( rc==SQLITE_ROW ){
- u32 type = v->apCsr[0]->aType[p->iCol];
+ VdbeCursor *pC = v->apCsr[0];
+ u32 type = pC->aType[p->iCol];
if( type<12 ){
zErr = sqlite3MPrintf(p->db, "cannot open value of type %s",
type==0?"null": type==7?"real": "integer"
@@ -73,9 +74,9 @@ static int blobSeekToRow(Incrblob *p, sqlite3_int64 iRow, char **pzErr){
sqlite3_finalize(p->pStmt);
p->pStmt = 0;
}else{
- p->iOffset = v->apCsr[0]->aOffset[p->iCol];
+ p->iOffset = pC->aType[p->iCol + pC->nField];
p->nByte = sqlite3VdbeSerialTypeLen(type);
- p->pCsr = v->apCsr[0]->pCursor;
+ p->pCsr = pC->pCursor;
sqlite3BtreeEnterCursor(p->pCsr);
sqlite3BtreeCacheOverflow(p->pCsr);
sqlite3BtreeLeaveCursor(p->pCsr);