Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Reset pCur->eSkip on a MoveTo (CVS 922) |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
d983accf4a702158f03742fb11959d0f |
User & Date: | paul 2003-04-20 11:41:04.000 |
Context
2003-04-20
| ||
11:46 | Align config vars controlling in-memory DB with code (CVS 923) (check-in: 921656db9e user: paul tags: trunk) | |
11:41 | Reset pCur->eSkip on a MoveTo (CVS 922) (check-in: d983accf4a user: paul tags: trunk) | |
00:00 | Update comments. Remove unused field from the Index structure. (CVS 921) (check-in: 7084e05093 user: drh tags: trunk) | |
Changes
Changes to src/btree_rb.c.
1 2 3 4 5 6 7 8 9 10 11 | /* ** 2003 Feb 4 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* | | | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | /* ** 2003 Feb 4 ** ** The author disclaims copyright to this source code. In place of ** a legal notice, here is a blessing: ** ** May you do good and not evil. ** May you find forgiveness for yourself and forgive others. ** May you share freely, never taking more than you give. ** ************************************************************************* ** $Id: btree_rb.c,v 1.5 2003/04/20 11:41:04 paul Exp $ ** ** This file implements an in-core database using Red-Black balanced ** binary trees. ** ** It was contributed to SQLite by anonymous on 2003-Feb-04 23:24:49 UTC. */ #include "btree.h" |
︙ | ︙ | |||
807 808 809 810 811 812 813 814 815 816 817 818 819 820 | /* If (pCur->pNode == NULL), then we have failed to find a match. Set * pCur->pNode to pTmp, which is either NULL (if the tree is empty) or the * last node traversed in the search. In either case the relation ship * between pTmp and the searched for key is already stored in *pRes. pTmp is * either the successor or predecessor of the key we tried to move to. */ if( !pCur->pNode ) pCur->pNode = pTmp; return SQLITE_OK; } /* ** Delete the entry that the cursor is pointing to. | > | 807 808 809 810 811 812 813 814 815 816 817 818 819 820 821 | /* If (pCur->pNode == NULL), then we have failed to find a match. Set * pCur->pNode to pTmp, which is either NULL (if the tree is empty) or the * last node traversed in the search. In either case the relation ship * between pTmp and the searched for key is already stored in *pRes. pTmp is * either the successor or predecessor of the key we tried to move to. */ if( !pCur->pNode ) pCur->pNode = pTmp; pCur->eSkip = SKIP_NONE; return SQLITE_OK; } /* ** Delete the entry that the cursor is pointing to. |
︙ | ︙ | |||
1003 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 | }else{ *pRes = 1; } pCur->eSkip = SKIP_NONE; return SQLITE_OK; } static int memBtreeNext(BtCursor* pCur, int *pRes) { if( pCur->pNode && pCur->eSkip != SKIP_NEXT ){ if( pCur->pNode->pRight ){ pCur->pNode = pCur->pNode->pRight; while( pCur->pNode->pLeft ) pCur->pNode = pCur->pNode->pLeft; | > > > > > > | 1004 1005 1006 1007 1008 1009 1010 1011 1012 1013 1014 1015 1016 1017 1018 1019 1020 1021 1022 1023 | }else{ *pRes = 1; } pCur->eSkip = SKIP_NONE; return SQLITE_OK; } /* ** Advance the cursor to the next entry in the database. If ** successful then set *pRes=0. If the cursor ** was already pointing to the last entry in the database before ** this routine was called, then set *pRes=1. */ static int memBtreeNext(BtCursor* pCur, int *pRes) { if( pCur->pNode && pCur->eSkip != SKIP_NEXT ){ if( pCur->pNode->pRight ){ pCur->pNode = pCur->pNode->pRight; while( pCur->pNode->pLeft ) pCur->pNode = pCur->pNode->pLeft; |
︙ | ︙ |