diff options
author | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-06-25 05:28:35 +0000 |
---|---|---|
committer | tpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da> | 2011-06-25 05:28:35 +0000 |
commit | f008adb5a77e094eaf6abf3fc0f36958e66896a5 (patch) | |
tree | 8e9244c4d4957c36be81e15b566b4aa5ea26c982 /kexi/3rdparty/kexisql3 | |
parent | 1210f27b660efb7b37ff43ec68763e85a403471f (diff) | |
download | koffice-f008adb5a77e094eaf6abf3fc0f36958e66896a5.tar.gz koffice-f008adb5a77e094eaf6abf3fc0f36958e66896a5.zip |
TQt4 port koffice
This should enable compilation under both Qt3 and Qt4; fixes for any missed components will be forthcoming
git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/applications/koffice@1238284 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kexi/3rdparty/kexisql3')
29 files changed, 359 insertions, 359 deletions
diff --git a/kexi/3rdparty/kexisql3/src/alter.c b/kexi/3rdparty/kexisql3/src/alter.c index eba01e29..73c49b1f 100644 --- a/kexi/3rdparty/kexisql3/src/alter.c +++ b/kexi/3rdparty/kexisql3/src/alter.c @@ -53,7 +53,7 @@ static void renameTableFunc( /* The principle used to locate the table name in the CREATE TABLE ** statement is that the table name is the first token that is immediatedly - ** followed by a left parenthesis - TK_LP. + ** followed by a left tqparenthesis - TK_LP. */ if( zSql ){ do { @@ -231,7 +231,7 @@ static void reloadTableSchema(Parse *pParse, Table *pTab, const char *zName){ #ifndef SQLITE_OMIT_TRIGGER /* Now, if the table is not stored in the temp database, reload any temp - ** triggers. Don't use IN(...) in case SQLITE_OMIT_SUBQUERY is defined. + ** triggers. Don't use IN(...) in case SQLITE_OMIT_SUBTQUERY is defined. */ if( (zWhere=whereTempTriggers(pParse, pTab)) ){ sqlite3VdbeOp3(v, OP_ParseSchema, 1, 0, zWhere, P3_DYNAMIC); @@ -407,7 +407,7 @@ void sqlite3AlterFinishAddColumn(Parse *pParse, Token *pColDef){ pDflt = 0; } - /* Check that the new column is not specified as PRIMARY KEY or UNIQUE. + /* Check that the new column is not specified as PRIMARY KEY or UNITQUE. ** If there is a NOT NULL constraint, then the default value for the ** column must not be NULL. */ @@ -416,7 +416,7 @@ void sqlite3AlterFinishAddColumn(Parse *pParse, Token *pColDef){ return; } if( pNew->pIndex ){ - sqlite3ErrorMsg(pParse, "Cannot add a UNIQUE column"); + sqlite3ErrorMsg(pParse, "Cannot add a UNITQUE column"); return; } if( pCol->notNull && !pDflt ){ diff --git a/kexi/3rdparty/kexisql3/src/btree.c b/kexi/3rdparty/kexisql3/src/btree.c index 472d63a6..65cddcd4 100644 --- a/kexi/3rdparty/kexisql3/src/btree.c +++ b/kexi/3rdparty/kexisql3/src/btree.c @@ -126,7 +126,7 @@ ** 8 4 Right child (the Ptr(N+1) value). Omitted on leaves. ** ** The flags define the format of this btree page. The leaf flag means that -** this page has no children. The zerodata flag means that this page carries +** this page has no tqchildren. The zerodata flag means that this page carries ** only keys and no data. The intkey flag means that the key is a integer ** which is stored in the key size entry of the cell header rather than in ** the payload area. @@ -212,7 +212,7 @@ #include <assert.h> /* Round up a number to the next larger multiple of 8. This is used -** to force 8-byte alignment on 64-bit architectures. +** to force 8-byte tqalignment on 64-bit architectures. */ #define ROUND8(x) ((x+7)&~7) @@ -262,9 +262,9 @@ static const char zMagicHeader[] = SQLITE_FILE_HEADER; ** structure is appended and initialized to zero. This structure stores ** information about the page that is decoded from the raw file page. ** -** The pParent field points back to the parent page. This allows us to +** The pParent field points back to the tqparent page. This allows us to ** walk up the BTree from any leaf to the root. Care must be taken to -** unref() the parent page pointer when this page is no longer referenced. +** unref() the tqparent page pointer when this page is no longer referenced. ** The pageDestructor() routine handles that chore. */ struct MemPage { @@ -281,7 +281,7 @@ struct MemPage { u16 maxLocal; /* Copy of Btree.maxLocal or Btree.maxLeaf */ u16 minLocal; /* Copy of Btree.minLocal or Btree.minLeaf */ u16 cellOffset; /* Index in aData of first cell pointer */ - u16 idxParent; /* Index in parent of this node */ + u16 idxParent; /* Index in tqparent of this node */ u16 nFree; /* Number of free bytes on the page */ u16 nCell; /* Number of cells on this page, local and ovfl */ struct _OvflCell { /* Cells that will not fit on aData[] */ @@ -291,7 +291,7 @@ struct MemPage { struct Btree *pBt; /* Pointer back to BTree structure */ u8 *aData; /* Pointer back to the start of the page */ Pgno pgno; /* Page number for this page */ - MemPage *pParent; /* The parent of this page. NULL for root */ + MemPage *pParent; /* The tqparent of this page. NULL for root */ }; /* @@ -443,18 +443,18 @@ static void put4byte(unsigned char *p, u32 v){ #define PTRMAP_ISPAGE(pgsz, pgno) (PTRMAP_PAGENO(pgsz,pgno)==pgno) /* -** The pointer map is a lookup table that identifies the parent page for -** each child page in the database file. The parent page is the page that -** contains a pointer to the child. Every page in the database contains -** 0 or 1 parent pages. (In this context 'database page' refers +** The pointer map is a lookup table that identifies the tqparent page for +** each child page in the database file. The tqparent page is the page that +** contains a pointer to the child. Every page in the database tqcontains +** 0 or 1 tqparent pages. (In this context 'database page' refers ** to any page that is not part of the pointer map itself.) Each pointer map -** entry consists of a single byte 'type' and a 4 byte parent page number. +** entry consists of a single byte 'type' and a 4 byte tqparent page number. ** The PTRMAP_XXX identifiers below are the valid types. ** ** The purpose of the pointer map is to facility moving pages from one ** position in the file to another as part of autovacuum. When a page -** is moved, the pointer in its parent must be updated to point to the -** new location. The pointer map is used to locate the parent page quickly. +** is moved, the pointer in its tqparent must be updated to point to the +** new location. The pointer map is used to locate the tqparent page quickly. ** ** PTRMAP_ROOTPAGE: The database page is a root-page. The page-number is not ** used in this case. @@ -471,7 +471,7 @@ static void put4byte(unsigned char *p, u32 v){ ** page in the overflow page list. ** ** PTRMAP_BTREE: The database page is a non-root btree page. The page number -** identifies the parent page in the btree. +** identifies the tqparent page in the btree. */ #define PTRMAP_ROOTPAGE 1 #define PTRMAP_FREEPAGE 2 @@ -483,10 +483,10 @@ static void put4byte(unsigned char *p, u32 v){ ** Write an entry into the pointer map. ** ** This routine updates the pointer map entry for page number 'key' -** so that it maps to type 'eType' and parent page number 'pgno'. +** so that it maps to type 'eType' and tqparent page number 'pgno'. ** An error code is returned if something goes wrong, otherwise SQLITE_OK. */ -static int ptrmapPut(Btree *pBt, Pgno key, u8 eType, Pgno parent){ +static int ptrmapPut(Btree *pBt, Pgno key, u8 eType, Pgno tqparent){ u8 *pPtrmap; /* The pointer map page */ Pgno iPtrmap; /* The pointer map page number */ int offset; /* Offset in pointer map page */ @@ -503,12 +503,12 @@ static int ptrmapPut(Btree *pBt, Pgno key, u8 eType, Pgno parent){ } offset = PTRMAP_PTROFFSET(pBt->usableSize, key); - if( eType!=pPtrmap[offset] || get4byte(&pPtrmap[offset+1])!=parent ){ - TRACE(("PTRMAP_UPDATE: %d->(%d,%d)\n", key, eType, parent)); + if( eType!=pPtrmap[offset] || get4byte(&pPtrmap[offset+1])!=tqparent ){ + TRACE(("PTRMAP_UPDATE: %d->(%d,%d)\n", key, eType, tqparent)); rc = sqlite3pager_write(pPtrmap); if( rc==SQLITE_OK ){ pPtrmap[offset] = eType; - put4byte(&pPtrmap[offset+1], parent); + put4byte(&pPtrmap[offset+1], tqparent); } } @@ -520,7 +520,7 @@ static int ptrmapPut(Btree *pBt, Pgno key, u8 eType, Pgno parent){ ** Read an entry from the pointer map. ** ** This routine retrieves the pointer map entry for page 'key', writing -** the type and parent page number to *pEType and *pPgno respectively. +** the type and tqparent page number to *pEType and *pPgno respectively. ** An error code is returned if something goes wrong, otherwise SQLITE_OK. */ static int ptrmapGet(Btree *pBt, Pgno key, u8 *pEType, Pgno *pPgno){ @@ -1001,8 +1001,8 @@ static void decodeFlags(MemPage *pPage, int flagByte){ ** Initialize the auxiliary information for a disk block. ** ** The pParent parameter must be a pointer to the MemPage which -** is the parent of the page being initialized. The root of a -** BTree has no parent and so for that page, pParent==NULL. +** is the tqparent of the page being initialized. The root of a +** BTree has no tqparent and so for that page, pParent==NULL. ** ** Return SQLITE_OK on success. If we see that the page does ** not contain a well-formed database page, then return @@ -1012,7 +1012,7 @@ static void decodeFlags(MemPage *pPage, int flagByte){ */ static int initPage( MemPage *pPage, /* The page to be initialized */ - MemPage *pParent /* The parent. Might be NULL */ + MemPage *pParent /* The tqparent. Might be NULL */ ){ int pc; /* Address of a freeblock within pPage->aData[] */ int hdr; /* Offset to beginning of page header */ @@ -1029,7 +1029,7 @@ static int initPage( assert( pPage->pgno==sqlite3pager_pagenumber(pPage->aData) ); assert( pPage->aData == &((unsigned char*)pPage)[-pBt->pageSize] ); if( pPage->pParent!=pParent && (pPage->pParent!=0 || pPage->isInit) ){ - /* The parent page should never change unless the file is corrupt */ + /* The tqparent page should never change unless the file is corrupt */ return SQLITE_CORRUPT_BKPT; } if( pPage->isInit ) return SQLITE_OK; @@ -1286,14 +1286,14 @@ int sqlite3BtreeOpen( #endif } pBt->usableSize = pBt->pageSize - nReserve; - assert( (pBt->pageSize & 7)==0 ); /* 8-byte alignment of pageSize */ + assert( (pBt->pageSize & 7)==0 ); /* 8-byte tqalignment of pageSize */ sqlite3pager_set_pagesize(pBt->pPager, pBt->pageSize); *ppBtree = pBt; return SQLITE_OK; } /* -** Close an open database and invalidate all cursors. +** Close an open database and tqinvalidate all cursors. */ int sqlite3BtreeClose(Btree *pBt){ while( pBt->pCursor ){ @@ -1658,7 +1658,7 @@ int sqlite3BtreeBeginTrans(Btree *pBt, int wrflag){ #ifndef SQLITE_OMIT_AUTOVACUUM /* -** Set the pointer-map entries for all children of page pPage. Also, if +** Set the pointer-map entries for all tqchildren of page pPage. Also, if ** pPage contains cells that point to overflow pages, set the pointer ** map entries for the overflow pages as well. */ @@ -2080,7 +2080,7 @@ int sqlite3BtreeCommitStmt(Btree *pBt){ ** Rollback the active statement subtransaction. If no subtransaction ** is active this routine is a no-op. ** -** All cursors will be invalidated by this operation. Any attempt +** All cursors will be tqinvalidated by this operation. Any attempt ** to use a cursor that was open at the beginning of this operation ** will result in an error. */ @@ -2578,7 +2578,7 @@ static int isRootPage(MemPage *pPage){ } /* -** Move the cursor up to the parent page. +** Move the cursor up to the tqparent page. ** ** pCur->idx is set to the cell index that contains the pointer ** to the page we are coming from. If we are coming from the @@ -3065,7 +3065,7 @@ static int allocatePage( memcpy(&pPrevTrunk->aData[0], &pTrunk->aData[0], 4); } }else{ - /* The trunk page is required by the caller but it contains + /* The trunk page is required by the caller but it tqcontains ** pointers to free-list leaves. The first leaf becomes a trunk ** page in this case. */ @@ -3425,11 +3425,11 @@ static int reparentPage(Btree *pBt, Pgno pgno, MemPage *pNewParent, int idx){ /* -** Change the pParent pointer of all children of pPage to point back +** Change the pParent pointer of all tqchildren of pPage to point back ** to pPage. ** ** In other words, for every child of pPage, invoke reparentPage() -** to make sure that each child knows that pPage is its parent. +** to make sure that each child knows that pPage is its tqparent. ** ** This routine gets called after you memcpy() one page into ** another. @@ -3644,7 +3644,7 @@ static void assemblePage( /* Forward reference */ static int balance(MemPage*, int); -#ifndef SQLITE_OMIT_QUICKBALANCE +#ifndef SQLITE_OMIT_TQUICKBALANCE /* ** This version of balance() handles the common special case where ** a new entry is being inserted on the extreme right-end of the @@ -3659,7 +3659,7 @@ static int balance(MemPage*, int); ** fill up. On average. ** ** pPage is the leaf page which is the right-most page in the tree. -** pParent is its parent. pPage must have a single overflow entry +** pParent is its tqparent. pPage must have a single overflow entry ** which is also the right-most entry on the page. */ static int balance_quick(MemPage *pPage, MemPage *pParent){ @@ -3670,9 +3670,9 @@ static int balance_quick(MemPage *pPage, MemPage *pParent){ int szCell; CellInfo info; Btree *pBt = pPage->pBt; - int parentIdx = pParent->nCell; /* pParent new divider cell index */ - int parentSize; /* Size of new divider cell */ - u8 parentCell[64]; /* Space for the new divider cell */ + int tqparentIdx = pParent->nCell; /* pParent new divider cell index */ + int tqparentSize; /* Size of new divider cell */ + u8 tqparentCell[64]; /* Space for the new divider cell */ /* Allocate a new page. Insert the overflow cell from pPage ** into it. Then remove the overflow cell from pPage. @@ -3687,7 +3687,7 @@ static int balance_quick(MemPage *pPage, MemPage *pParent){ assemblePage(pNew, 1, &pCell, &szCell); pPage->nOverflow = 0; - /* Set the parent of the newly allocated page to pParent. */ + /* Set the tqparent of the newly allocated page to pParent. */ pNew->pParent = pParent; sqlite3pager_ref(pParent->aData); @@ -3697,16 +3697,16 @@ static int balance_quick(MemPage *pPage, MemPage *pParent){ */ assert( pPage->nCell>0 ); parseCellPtr(pPage, findCell(pPage, pPage->nCell-1), &info); - rc = fillInCell(pParent, parentCell, 0, info.nKey, 0, 0, &parentSize); + rc = fillInCell(pParent, tqparentCell, 0, info.nKey, 0, 0, &tqparentSize); if( rc!=SQLITE_OK ){ return rc; } - assert( parentSize<64 ); - rc = insertCell(pParent, parentIdx, parentCell, parentSize, 0, 4); + assert( tqparentSize<64 ); + rc = insertCell(pParent, tqparentIdx, tqparentCell, tqparentSize, 0, 4); if( rc!=SQLITE_OK ){ return rc; } - put4byte(findOverflowCell(pParent,parentIdx), pPage->pgno); + put4byte(findOverflowCell(pParent,tqparentIdx), pPage->pgno); put4byte(&pParent->aData[pParent->hdrOffset+8], pgnoNew); #ifndef SQLITE_OMIT_AUTOVACUUM @@ -3726,13 +3726,13 @@ static int balance_quick(MemPage *pPage, MemPage *pParent){ } #endif - /* Release the reference to the new page and balance the parent page, + /* Release the reference to the new page and balance the tqparent page, ** in case the divider cell inserted caused it to become overfull. */ releasePage(pNew); return balance(pParent, 0); } -#endif /* SQLITE_OMIT_QUICKBALANCE */ +#endif /* SQLITE_OMIT_TQUICKBALANCE */ /* ** The ISAUTOVACUUM macro is used within balance_nonroot() to determine @@ -3752,7 +3752,7 @@ static int balance_quick(MemPage *pPage, MemPage *pParent){ ** of pPage so that all pages have about the same amount of free space. ** Usually NN siblings on either side of pPage is used in the balancing, ** though more siblings might come from one side if pPage is the first -** or last child of its parent. If pPage has fewer than 2*NN siblings +** or last child of its tqparent. If pPage has fewer than 2*NN siblings ** (something which can only happen if pPage is the root page or a ** child of root) then all available siblings participate in the balancing. ** @@ -3768,16 +3768,16 @@ static int balance_quick(MemPage *pPage, MemPage *pParent){ ** if the page is overfull. Part of the job of this routine is to ** make sure all Cells for pPage once again fit in pPage->aData[]. ** -** In the course of balancing the siblings of pPage, the parent of pPage +** In the course of balancing the siblings of pPage, the tqparent of pPage ** might become overfull or underfull. If that happens, then this routine -** is called recursively on the parent. +** is called recursively on the tqparent. ** ** If this routine fails for any reason, it might leave the database ** in a corrupted state. So if this routine fails, the database should ** be rolled back. */ static int balance_nonroot(MemPage *pPage){ - MemPage *pParent; /* The parent of pPage */ + MemPage *pParent; /* The tqparent of pPage */ Btree *pBt; /* The whole database */ int nCell = 0; /* Number of cells in apCell[] */ int nMaxCells = 0; /* Allocated size of apCell, szCell, aFrom. */ @@ -3812,7 +3812,7 @@ static int balance_nonroot(MemPage *pPage){ #endif /* - ** Find the parent page. + ** Find the tqparent page. */ assert( pPage->isInit ); assert( sqlite3pager_iswriteable(pPage->aData) ); @@ -3822,7 +3822,7 @@ static int balance_nonroot(MemPage *pPage){ assert( pParent ); TRACE(("BALANCE: begin page %d child of %d\n", pPage->pgno, pParent->pgno)); -#ifndef SQLITE_OMIT_QUICKBALANCE +#ifndef SQLITE_OMIT_TQUICKBALANCE /* ** A special case: If a new entry has just been inserted into a ** table (that is, a btree with integer keys and all data at the leaves) @@ -3848,7 +3848,7 @@ static int balance_nonroot(MemPage *pPage){ #endif /* - ** Find the cell in the parent page whose left child points back + ** Find the cell in the tqparent page whose left child points back ** to pPage. The "idx" variable is the index of that cell. If pPage ** is the rightmost child of pParent then set idx to pParent->nCell */ @@ -3879,7 +3879,7 @@ static int balance_nonroot(MemPage *pPage){ ** the siblings. An attempt is made to find NN siblings on either ** side of pPage. More siblings are taken from one side, however, if ** pPage there are fewer than NN siblings on the other side. If pParent - ** has NB or fewer children then all children of pParent are taken. + ** has NB or fewer tqchildren then all tqchildren of pParent are taken. */ nxDiv = idx - NN; if( nxDiv + NB > pParent->nCell ){ @@ -3911,7 +3911,7 @@ static int balance_nonroot(MemPage *pPage){ } /* Make nMaxCells a multiple of 2 in order to preserve 8-byte - ** alignment */ + ** tqalignment */ nMaxCells = (nMaxCells + 1)&~1; /* @@ -3930,13 +3930,13 @@ static int balance_nonroot(MemPage *pPage){ } szCell = (int*)&apCell[nMaxCells]; aCopy[0] = (u8*)&szCell[nMaxCells]; - assert( ((aCopy[0] - (u8*)apCell) & 7)==0 ); /* 8-byte alignment required */ + assert( ((aCopy[0] - (u8*)apCell) & 7)==0 ); /* 8-byte tqalignment required */ for(i=1; i<NB; i++){ aCopy[i] = &aCopy[i-1][pBt->pageSize+ROUND8(sizeof(MemPage))]; - assert( ((aCopy[i] - (u8*)apCell) & 7)==0 ); /* 8-byte alignment required */ + assert( ((aCopy[i] - (u8*)apCell) & 7)==0 ); /* 8-byte tqalignment required */ } aSpace = &aCopy[NB-1][pBt->pageSize+ROUND8(sizeof(MemPage))]; - assert( ((aSpace - (u8*)apCell) & 7)==0 ); /* 8-byte alignment required */ + assert( ((aSpace - (u8*)apCell) & 7)==0 ); /* 8-byte tqalignment required */ #ifndef SQLITE_OMIT_AUTOVACUUM if( pBt->autoVacuum ){ aFrom = &aSpace[5*pBt->pageSize]; @@ -4199,7 +4199,7 @@ static int balance_nonroot(MemPage *pPage){ #ifndef SQLITE_OMIT_AUTOVACUUM /* If this is an auto-vacuum database, update the pointer map entries ** that point to the siblings that were rearranged. These can be: left - ** children of cells, the right-child of the page, or overflow pages + ** tqchildren of cells, the right-child of the page, or overflow pages ** pointed to by cells. */ if( pBt->autoVacuum ){ @@ -4218,7 +4218,7 @@ static int balance_nonroot(MemPage *pPage){ j = cntNew[i]; /* If the sibling page assembled above was not the right-most sibling, - ** insert a divider cell into the parent page. + ** insert a divider cell into the tqparent page. */ if( i<nNew-1 && j<nCell ){ u8 *pCell; @@ -4284,7 +4284,7 @@ static int balance_nonroot(MemPage *pPage){ } /* - ** Reparent children of all cells. + ** Retqparent tqchildren of all cells. */ for(i=0; i<nNew; i++){ rc = reparentChildPages(apNew[i]); @@ -4294,9 +4294,9 @@ static int balance_nonroot(MemPage *pPage){ if( rc!=SQLITE_OK ) goto balance_cleanup; /* - ** Balance the parent page. Note that the current page (pPage) might + ** Balance the tqparent page. Note that the current page (pPage) might ** have been added to the freelist so it might no longer be initialized. - ** But the parent page will always be initialized. + ** But the tqparent page will always be initialized. */ assert( pParent->isInit ); /* assert( pPage->isInit ); // No! pPage might have been added to freelist */ @@ -4376,7 +4376,7 @@ static int balance_shallower(MemPage *pPage){ szCell[i] = cellSizePtr(pChild, apCell[i]); } assemblePage(pPage, pChild->nCell, apCell, szCell); - /* Copy the right-pointer of the child to the parent. */ + /* Copy the right-pointer of the child to the tqparent. */ put4byte(&pPage->aData[pPage->hdrOffset+8], get4byte(&pChild->aData[pChild->hdrOffset+8])); freePage(pChild); @@ -4433,10 +4433,10 @@ static int balance_deeper(MemPage *pPage){ Pgno pgnoChild; /* Page number of the new child page */ Btree *pBt; /* The BTree */ int usableSize; /* Total usable size of a page */ - u8 *data; /* Content of the parent page */ + u8 *data; /* Content of the tqparent page */ u8 *cdata; /* Content of the child page */ - int hdr; /* Offset to page header in parent */ - int brk; /* Offset to content of first cell in parent */ + int hdr; /* Offset to page header in tqparent */ + int brk; /* Offset to content of first cell in tqparent */ assert( pPage->pParent==0 ); assert( pPage->nOverflow>0 ); @@ -4842,7 +4842,7 @@ int sqlite3BtreeCreateTable(Btree *pBt, int *piTable, int flags){ } /* -** Erase the given database page and all its children. Return +** Erase the given database page and all its tqchildren. Return ** the page to the freelist. */ static int clearDatabasePage( @@ -5136,7 +5136,7 @@ static int btreePageDump(Btree *pBt, int pgno, int recursive, MemPage *pParent){ pPage->leaf = (c & PTF_LEAF)!=0; pPage->hasData = !(pPage->zeroData || (!pPage->leaf && pPage->leafData)); nCell = get2byte(&data[hdr+3]); - sqlite3DebugPrintf("PAGE %d: flags=0x%02x frag=%d parent=%d\n", pgno, + sqlite3DebugPrintf("PAGE %d: flags=0x%02x frag=%d tqparent=%d\n", pgno, data[hdr], data[hdr+7], (pPage->isInit && pPage->pParent) ? pPage->pParent->pgno : 0); assert( hdr == (pgno==1 ? 100 : 0) ); @@ -5353,7 +5353,7 @@ static void checkPtrmap( IntegrityCk *pCheck, /* Integrity check context */ Pgno iChild, /* Child page number */ u8 eType, /* Expected pointer map type */ - Pgno iParent, /* Expected pointer map parent page number */ + Pgno iParent, /* Expected pointer map tqparent page number */ char *zContext /* Context description (used for error msg) */ ){ int rc; @@ -5457,8 +5457,8 @@ static void checkList( ** NO 3. Make sure no key is less than or equal to zLowerBound. ** NO 4. Make sure no key is greater than or equal to zUpperBound. ** 5. Check the integrity of overflow pages. -** 6. Recursively call checkTreePage on all children. -** 7. Verify that the depth of all children is the same. +** 6. Recursively call checkTreePage on all tqchildren. +** 7. Verify that the depth of all tqchildren is the same. ** 8. Make sure this page is at least 33% full or else it is ** the root of the tree. */ diff --git a/kexi/3rdparty/kexisql3/src/build.c b/kexi/3rdparty/kexisql3/src/build.c index 429213da..02faa0fe 100644 --- a/kexi/3rdparty/kexisql3/src/build.c +++ b/kexi/3rdparty/kexisql3/src/build.c @@ -67,19 +67,19 @@ void sqlite3FinishCoding(Parse *pParse){ if( v ){ sqlite3VdbeAddOp(v, OP_Halt, 0, 0); - /* The cookie mask contains one bit for each database file open. + /* The cookie tqmask contains one bit for each database file open. ** (Bit 0 is for main, bit 1 is for temp, and so forth.) Bits are ** set for each database that is used. Generate code to start a ** transaction on each used database and to verify the schema cookie ** on each used database. */ if( pParse->cookieGoto>0 ){ - u32 mask; + u32 tqmask; int iDb; sqlite3VdbeJumpHere(v, pParse->cookieGoto-1); - for(iDb=0, mask=1; iDb<db->nDb; mask<<=1, iDb++){ - if( (mask & pParse->cookieMask)==0 ) continue; - sqlite3VdbeAddOp(v, OP_Transaction, iDb, (mask & pParse->writeMask)!=0); + for(iDb=0, tqmask=1; iDb<db->nDb; tqmask<<=1, iDb++){ + if( (tqmask & pParse->cookieMask)==0 ) continue; + sqlite3VdbeAddOp(v, OP_Transaction, iDb, (tqmask & pParse->writeMask)!=0); sqlite3VdbeAddOp(v, OP_VerifyCookie, iDb, pParse->cookieValue[iDb]); } sqlite3VdbeAddOp(v, OP_Goto, 0, pParse->cookieGoto); @@ -746,7 +746,7 @@ void sqlite3StartTable( /* Begin generating the code that will insert the table record into ** the SQLITE_MASTER table. Note in particular that we must go ahead ** and allocate the record number for the table entry now. Before any - ** PRIMARY KEY or UNIQUE keywords are parsed. Those keywords will cause + ** PRIMARY KEY or UNITQUE keywords are parsed. Those keywords will cause ** indices to be created and the table record must come before the ** indices. Hence, the record number for the table must be allocated ** now. @@ -879,7 +879,7 @@ void sqlite3AddNotNull(Parse *pParse, int onError){ ** ** This routine does a case-independent search of zType for the ** substrings in the following table. If one of the substrings is -** found, the corresponding affinity is returned. If zType contains +** found, the corresponding affinity is returned. If zType tqcontains ** more than one of the substrings, entries toward the top of ** the table take priority. For example, if zType is 'BLOBINT', ** SQLITE_AFF_INTEGER is returned. @@ -2011,7 +2011,7 @@ static void sqlite3RefillIndex(Parse *pParse, Index *pIndex, int memRootPage){ ** Create a new index for an SQL table. pName1.pName2 is the name of the index ** and pTblList is the name of the table that is to be indexed. Both will ** be NULL for a primary key or an index that is created to satisfy a -** UNIQUE constraint. If pTable and pIndex are NULL, use pParse->pNewTable +** UNITQUE constraint. If pTable and pIndex are NULL, use pParse->pNewTable ** as the table to be indexed. pParse->pNewTable is a table that is ** currently being constructed by a CREATE TABLE statement. ** @@ -2104,7 +2104,7 @@ void sqlite3CreateIndex( ** index, then we will continue to process this index. ** ** If pName==0 it means that we are - ** dealing with a primary key or UNIQUE constraint. We have to invent our + ** dealing with a primary key or UNITQUE constraint. We have to invent our ** own name. */ if( pName ){ @@ -2211,12 +2211,12 @@ void sqlite3CreateIndex( if( pTab==pParse->pNewTable ){ /* This routine has been called to create an automatic index as a - ** result of a PRIMARY KEY or UNIQUE clause on a column definition, or - ** a PRIMARY KEY or UNIQUE clause following the column definitions. + ** result of a PRIMARY KEY or UNITQUE clause on a column definition, or + ** a PRIMARY KEY or UNITQUE clause following the column definitions. ** i.e. one of: ** ** CREATE TABLE t(x PRIMARY KEY, y); - ** CREATE TABLE t(x, y, UNIQUE(x, y)); + ** CREATE TABLE t(x, y, UNITQUE(x, y)); ** ** Either way, check to see if the table already has such an index. If ** so, don't bother creating this one. This only applies to @@ -2285,7 +2285,7 @@ void sqlite3CreateIndex( ** we don't want to recreate it. ** ** If pTblName==0 it means this index is generated as a primary key - ** or UNIQUE constraint of a CREATE TABLE statement. Since the table + ** or UNITQUE constraint of a CREATE TABLE statement. Since the table ** has just been created, it contains no data and the index initialization ** step can be skipped. */ @@ -2309,11 +2309,11 @@ void sqlite3CreateIndex( if( pStart && pEnd ){ /* A named index with an explicit CREATE INDEX statement */ zStmt = sqlite3MPrintf("CREATE%s INDEX %.*s", - onError==OE_None ? "" : " UNIQUE", + onError==OE_None ? "" : " UNITQUE", pEnd->z - pName->z + 1, pName->z); }else{ - /* An automatic index created by a PRIMARY KEY or UNIQUE constraint */ + /* An automatic index created by a PRIMARY KEY or UNITQUE constraint */ /* zStmt = sqlite3MPrintf(""); */ zStmt = 0; } @@ -2331,7 +2331,7 @@ void sqlite3CreateIndex( sqliteFree(zStmt); /* Fill the index with data and reparse the schema. Code an OP_Expire - ** to invalidate all pre-compiled statements. + ** to tqinvalidate all pre-compiled statements. */ if( pTblName ){ sqlite3RefillIndex(pParse, pIndex, iMem); @@ -2428,7 +2428,7 @@ void sqlite3DropIndex(Parse *pParse, SrcList *pName){ goto exit_drop_index; } if( pIndex->autoIndex ){ - sqlite3ErrorMsg(pParse, "index associated with UNIQUE " + sqlite3ErrorMsg(pParse, "index associated with UNITQUE " "or PRIMARY KEY constraint cannot be dropped", 0); goto exit_drop_index; } @@ -2766,7 +2766,7 @@ static int sqlite3OpenTempDatabase(Parse *pParse){ void sqlite3CodeVerifySchema(Parse *pParse, int iDb){ sqlite3 *db; Vdbe *v; - int mask; + int tqmask; v = sqlite3GetVdbe(pParse); if( v==0 ) return; /* This only happens if there was a prior error */ @@ -2778,9 +2778,9 @@ void sqlite3CodeVerifySchema(Parse *pParse, int iDb){ assert( iDb<db->nDb ); assert( db->aDb[iDb].pBt!=0 || iDb==1 ); assert( iDb<32 ); - mask = 1<<iDb; - if( (pParse->cookieMask & mask)==0 ){ - pParse->cookieMask |= mask; + tqmask = 1<<iDb; + if( (pParse->cookieMask & tqmask)==0 ){ + pParse->cookieMask |= tqmask; pParse->cookieValue[iDb] = db->aDb[iDb].schema_cookie; if( !OMIT_TEMPDB && iDb==1 ){ sqlite3OpenTempDatabase(pParse); diff --git a/kexi/3rdparty/kexisql3/src/expr.c b/kexi/3rdparty/kexisql3/src/expr.c index 45f7fc2f..9d079e1b 100644 --- a/kexi/3rdparty/kexisql3/src/expr.c +++ b/kexi/3rdparty/kexisql3/src/expr.c @@ -478,7 +478,7 @@ ExprList *sqlite3ExprListDup(ExprList *p){ ** called with a NULL argument. */ #if !defined(SQLITE_OMIT_VIEW) || !defined(SQLITE_OMIT_TRIGGER) \ - || !defined(SQLITE_OMIT_SUBQUERY) + || !defined(SQLITE_OMIT_SUBTQUERY) SrcList *sqlite3SrcListDup(SrcList *p){ SrcList *pNew; int i; @@ -623,7 +623,7 @@ void sqlite3ExprListDelete(ExprList *pList){ ** Walk an expression tree. Call xFunc for each node visited. ** ** The return value from xFunc determines whether the tree walk continues. -** 0 means continue walking the tree. 1 means do not walk children +** 0 means continue walking the tree. 1 means do not walk tqchildren ** of the current node but continue with siblings. 2 means abandon ** the tree walk completely. ** @@ -698,7 +698,7 @@ static int exprNodeIsConstant(void *pArg, Expr *pExpr){ case TK_DOT: case TK_AGG_FUNCTION: case TK_AGG_COLUMN: -#ifndef SQLITE_OMIT_SUBQUERY +#ifndef SQLITE_OMIT_SUBTQUERY case TK_SELECT: case TK_EXISTS: #endif @@ -1018,15 +1018,15 @@ static int lookupName( } /* If a column from a table in pSrcList is referenced, then record - ** this fact in the pSrcList.a[].colUsed bitmask. Column 0 causes + ** this fact in the pSrcList.a[].colUsed bittqmask. Column 0 causes ** bit 0 to be set. Column 1 sets bit 1. And so forth. If the - ** column number is greater than the number of bits in the bitmask - ** then set the high-order bit of the bitmask. + ** column number is greater than the number of bits in the bittqmask + ** then set the high-order bit of the bittqmask. */ if( pExpr->iColumn>=0 && pMatch!=0 ){ int n = pExpr->iColumn; - if( n>=sizeof(Bitmask)*8 ){ - n = sizeof(Bitmask)*8-1; + if( n>=sizeof(Bittqmask)*8 ){ + n = sizeof(Bittqmask)*8-1; } assert( pMatch->iCursor==pExpr->iTable ); pMatch->colUsed |= 1<<n; @@ -1190,7 +1190,7 @@ static int nameResolverStep(void *pArg, Expr *pExpr){ */ return is_agg; } -#ifndef SQLITE_OMIT_SUBQUERY +#ifndef SQLITE_OMIT_SUBTQUERY case TK_SELECT: case TK_EXISTS: #endif @@ -1273,7 +1273,7 @@ struct QueryCoder { ** of allowed values. The second form causes the SELECT to generate ** a temporary table. */ -#ifndef SQLITE_OMIT_SUBQUERY +#ifndef SQLITE_OMIT_SUBTQUERY void sqlite3CodeSubselect(Parse *pParse, Expr *pExpr){ int testAddr = 0; /* One-time test address */ Vdbe *v = sqlite3GetVdbe(pParse); @@ -1414,7 +1414,7 @@ void sqlite3CodeSubselect(Parse *pParse, Expr *pExpr){ } return; } -#endif /* SQLITE_OMIT_SUBQUERY */ +#endif /* SQLITE_OMIT_SUBTQUERY */ /* ** Generate an instruction that will put the integer describe by @@ -1649,7 +1649,7 @@ void sqlite3ExprCode(Parse *pParse, Expr *pExpr){ sqlite3VdbeOp3(v, OP_Function, constMask, nExpr, (char*)pDef, P3_FUNCDEF); break; } -#ifndef SQLITE_OMIT_SUBQUERY +#ifndef SQLITE_OMIT_SUBTQUERY case TK_EXISTS: case TK_SELECT: { sqlite3CodeSubselect(pParse, pExpr); @@ -1949,7 +1949,7 @@ void sqlite3ExprIfFalse(Parse *pParse, Expr *pExpr, int dest, int jumpIfNull){ */ op = ((pExpr->op+(TK_ISNULL&1))^1)-(TK_ISNULL&1); - /* Verify correct alignment of TK_ and OP_ constants + /* Verify correct tqalignment of TK_ and OP_ constants */ assert( pExpr->op!=TK_ISNULL || op==OP_NotNull ); assert( pExpr->op!=TK_NOTNULL || op==OP_IsNull ); diff --git a/kexi/3rdparty/kexisql3/src/func.c b/kexi/3rdparty/kexisql3/src/func.c index 9917f4e2..36435343 100644 --- a/kexi/3rdparty/kexisql3/src/func.c +++ b/kexi/3rdparty/kexisql3/src/func.c @@ -42,20 +42,20 @@ static void minmaxFunc( sqlite3_value **argv ){ int i; - int mask; /* 0 for min() or 0xffffffff for max() */ + int tqmask; /* 0 for min() or 0xffffffff for max() */ int iBest; CollSeq *pColl; if( argc==0 ) return; - mask = sqlite3_user_data(context)==0 ? 0 : -1; + tqmask = sqlite3_user_data(context)==0 ? 0 : -1; pColl = sqlite3GetFuncCollSeq(context); assert( pColl ); - assert( mask==-1 || mask==0 ); + assert( tqmask==-1 || tqmask==0 ); iBest = 0; if( sqlite3_value_type(argv[0])==SQLITE_NULL ) return; for(i=1; i<argc; i++){ if( sqlite3_value_type(argv[i])==SQLITE_NULL ) return; - if( (sqlite3MemCompare(argv[iBest], argv[i], pColl)^mask)>=0 ){ + if( (sqlite3MemCompare(argv[iBest], argv[i], pColl)^tqmask)>=0 ){ iBest = i; } } @@ -545,7 +545,7 @@ static void versionFunc( ** change. This function may disappear. Do not write code that depends ** on this function. ** -** Implementation of the QUOTE() function. This function takes a single +** Implementation of the TQUOTE() function. This function takes a single ** argument. If the argument is numeric, the return value is the same as ** the argument. If the argument is NULL, the return value is the string ** "NULL". Otherwise, the argument is enclosed in single quotes with @@ -661,7 +661,7 @@ static void soundexFunc(sqlite3_context *context, int argc, sqlite3_value **argv static void randStr(sqlite3_context *context, int argc, sqlite3_value **argv){ static const unsigned char zSrc[] = "abcdefghijklmnopqrstuvwxyz" - "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + "ABCDEFGHIJKLMNOPTQRSTUVWXYZ" "0123456789" ".-!,:*^+=_|?/<> "; int iMin, iMax, n, r, i; diff --git a/kexi/3rdparty/kexisql3/src/insert.c b/kexi/3rdparty/kexisql3/src/insert.c index 28d4236e..4cac8724 100644 --- a/kexi/3rdparty/kexisql3/src/insert.c +++ b/kexi/3rdparty/kexisql3/src/insert.c @@ -720,7 +720,7 @@ insert_cleanup: /* ** Generate code to do a constraint check prior to an INSERT or an UPDATE. ** -** When this routine is called, the stack contains (from bottom to top) +** When this routine is called, the stack tqcontains (from bottom to top) ** the following values: ** ** 1. The rowid of the row to be updated before the update. This @@ -746,7 +746,7 @@ insert_cleanup: ** aIdxUsed!=0 and aIdxUsed[i]!=0. ** ** This routine also generates code to check constraints. NOT NULL, -** CHECK, and UNIQUE constraints are all checked. If a constraint fails, +** CHECK, and UNITQUE constraints are all checked. If a constraint fails, ** then the appropriate action is performed. There are five possible ** actions: ROLLBACK, ABORT, FAIL, REPLACE, and IGNORE. ** @@ -774,7 +774,7 @@ insert_cleanup: ** value for that column. If the default value ** is NULL, the action is the same as ABORT. ** -** UNIQUE REPLACE The other row that conflicts with the row +** UNITQUE REPLACE The other row that conflicts with the row ** being inserted is removed. ** ** CHECK REPLACE Illegal. The results in an exception. @@ -927,7 +927,7 @@ void sqlite3GenerateConstraintChecks( } } - /* Test all UNIQUE constraints by creating entries for each UNIQUE + /* Test all UNITQUE constraints by creating entries for each UNITQUE ** index and making sure that duplicate entries do not already exist. ** Add the new records to the indices as we go. */ @@ -951,7 +951,7 @@ void sqlite3GenerateConstraintChecks( /* Find out what action to take in case there is an indexing conflict */ onError = pIdx->onError; - if( onError==OE_None ) continue; /* pIdx is not a UNIQUE index */ + if( onError==OE_None ) continue; /* pIdx is not a UNITQUE index */ if( overrideError!=OE_Default ){ onError = overrideError; }else if( onError==OE_Default ){ @@ -1015,7 +1015,7 @@ void sqlite3GenerateConstraintChecks( break; } } -#if NULL_DISTINCT_FOR_UNIQUE +#if NULL_DISTINCT_FOR_UNITQUE sqlite3VdbeJumpHere(v, jumpInst1); #endif sqlite3VdbeJumpHere(v, jumpInst2); diff --git a/kexi/3rdparty/kexisql3/src/keywordhash.h b/kexi/3rdparty/kexisql3/src/keywordhash.h index 9beb5fbd..708440a2 100644 --- a/kexi/3rdparty/kexisql3/src/keywordhash.h +++ b/kexi/3rdparty/kexisql3/src/keywordhash.h @@ -8,8 +8,8 @@ static int keywordCode(const char *z, int n){ "CASECASTCOLLATECOLUMNCOMMITCONFLICTCONSTRAINTERSECTCREATECROSS" "CURRENT_DATECURRENT_TIMESTAMPLANDESCDETACHDISTINCTDROPRAGMATCH" "FAILIMITFROMFULLGROUPDATEIMMEDIATEINSERTINSTEADINTOFFSETISNULL" - "JOINORDEREPLACEOUTERESTRICTPRIMARYQUERYRIGHTROLLBACKROWHENUNION" - "UNIQUEUSINGVACUUMVALUESVIEWHERE"; + "JOINORDEREPLACEOUTERESTRICTPRIMARYTQUERYRIGHTROLLBACKROWHENUNION" + "UNITQUEUSINGVACUUMVALUESVIEWHERE"; static const unsigned char aHash[127] = { 91, 80, 106, 90, 0, 4, 0, 0, 113, 0, 83, 0, 0, 94, 44, 76, 92, 0, 105, 108, 96, 0, 0, 10, 0, 0, @@ -76,8 +76,8 @@ static int keywordCode(const char *z, int n){ TK_FROM, TK_JOIN_KW, TK_GROUP, TK_UPDATE, TK_IMMEDIATE, TK_INSERT, TK_INSTEAD, TK_INTO, TK_OF, TK_OFFSET, TK_SET, TK_ISNULL, TK_JOIN, TK_ORDER, TK_REPLACE, - TK_JOIN_KW, TK_RESTRICT, TK_PRIMARY, TK_QUERY, TK_JOIN_KW, - TK_ROLLBACK, TK_ROW, TK_WHEN, TK_UNION, TK_UNIQUE, + TK_JOIN_KW, TK_RESTRICT, TK_PRIMARY, TK_TQUERY, TK_JOIN_KW, + TK_ROLLBACK, TK_ROW, TK_WHEN, TK_UNION, TK_UNITQUE, TK_USING, TK_VACUUM, TK_VALUES, TK_VIEW, TK_WHERE, }; int h, i; diff --git a/kexi/3rdparty/kexisql3/src/main.c b/kexi/3rdparty/kexisql3/src/main.c index 83356f43..8d6acd5c 100644 --- a/kexi/3rdparty/kexisql3/src/main.c +++ b/kexi/3rdparty/kexisql3/src/main.c @@ -467,7 +467,7 @@ int sqlite3_create_function( /* Check if an existing function is being overridden or deleted. If so, ** and there are active VMs, then return SQLITE_BUSY. If a function ** is being overridden/deleted but there are no active VMs, allow the - ** operation to continue but invalidate all precompiled statements. + ** operation to continue but tqinvalidate all precompiled statements. */ p = sqlite3FindFunction(db, zFunctionName, nName, nArg, enc, 0); if( p && p->iPrefEnc==enc && p->nArg==nArg ){ @@ -667,7 +667,7 @@ const char *sqlite3_errmsg(sqlite3 *db){ ** error. */ const void *sqlite3_errmsg16(sqlite3 *db){ - /* Because all the characters in the string are in the unicode + /* Because all the characters in the string are in the tqunicode ** range 0x00-0xFF, if we pad the big-endian string with a ** zero byte, we can obtain the little-endian string with ** &big_endian[1]. @@ -934,7 +934,7 @@ int sqlite3_create_collation( /* Check if this call is removing or replacing an existing collation ** sequence. If so, and there are active VMs, return busy. If there - ** are no active VMs, invalidate any pre-compiled statements. + ** are no active VMs, tqinvalidate any pre-compiled statements. */ pColl = sqlite3FindCollSeq(db, (u8)enc, zName, strlen(zName), 0); if( pColl && pColl->xCmp ){ diff --git a/kexi/3rdparty/kexisql3/src/os_mac.c b/kexi/3rdparty/kexisql3/src/os_mac.c index 15798b5d..f393b423 100644 --- a/kexi/3rdparty/kexisql3/src/os_mac.c +++ b/kexi/3rdparty/kexisql3/src/os_mac.c @@ -84,11 +84,11 @@ int sqlite3OsOpenReadWrite( if( FSpMakeFSRef(&fsSpec, &fsRef) != noErr ) return SQLITE_CANTOPEN; FSGetDataForkName(&dfName); - if( FSOpenFork(&fsRef, dfName.length, dfName.unicode, + if( FSOpenFork(&fsRef, dfName.length, dfName.tqunicode, fsRdWrShPerm, &(id->refNum)) != noErr ){ - if( FSOpenFork(&fsRef, dfName.length, dfName.unicode, + if( FSOpenFork(&fsRef, dfName.length, dfName.tqunicode, fsRdWrPerm, &(id->refNum)) != noErr ){ - if (FSOpenFork(&fsRef, dfName.length, dfName.unicode, + if (FSOpenFork(&fsRef, dfName.length, dfName.tqunicode, fsRdPerm, &(id->refNum)) != noErr ) return SQLITE_CANTOPEN; else @@ -149,7 +149,7 @@ int sqlite3OsOpenExclusive(const char *zFilename, OsFile *id, int delFlag){ if( FSpMakeFSRef(&fsSpec, &fsRef) != noErr ) return SQLITE_CANTOPEN; FSGetDataForkName(&dfName); - if( FSOpenFork(&fsRef, dfName.length, dfName.unicode, + if( FSOpenFork(&fsRef, dfName.length, dfName.tqunicode, fsRdWrPerm, &(id->refNum)) != noErr ) return SQLITE_CANTOPEN; # else @@ -185,7 +185,7 @@ int sqlite3OsOpenReadOnly(const char *zFilename, OsFile *id){ if( FSpMakeFSRef(&fsSpec, &fsRef) != noErr ) return SQLITE_CANTOPEN; FSGetDataForkName(&dfName); - if( FSOpenFork(&fsRef, dfName.length, dfName.unicode, + if( FSOpenFork(&fsRef, dfName.length, dfName.tqunicode, fsRdPerm, &(id->refNum)) != noErr ) return SQLITE_CANTOPEN; # else @@ -232,7 +232,7 @@ int sqlite3OsOpenDirectory( int sqlite3OsTempFileName(char *zBuf){ static char zChars[] = "abcdefghijklmnopqrstuvwxyz" - "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + "ABCDEFGHIJKLMNOPTQRSTUVWXYZ" "0123456789"; int i, j; char zTempPath[SQLITE_TEMPNAME_SIZE]; @@ -506,20 +506,20 @@ int sqlite3OsReadLock(OsFile *id){ params.ioParam.ioRefNum = id->refNumRF; params.ioParam.ioPosMode = fsFromStart; params.ioParam.ioPosOffset = FIRST_LOCKBYTE; - params.ioParam.ioReqCount = 1; + params.ioParam.ioRetqCount = 1; while( cnt-->0 && (res = PBLockRangeSync(¶ms))!=noErr ){ UInt32 finalTicks; Delay(1, &finalTicks); /* 1/60 sec */ } if( res == noErr ){ params.ioParam.ioPosOffset = FIRST_LOCKBYTE+1; - params.ioParam.ioReqCount = N_LOCKBYTE; + params.ioParam.ioRetqCount = N_LOCKBYTE; PBUnlockRangeSync(¶ms); params.ioParam.ioPosOffset = FIRST_LOCKBYTE+lk; - params.ioParam.ioReqCount = 1; + params.ioParam.ioRetqCount = 1; res = PBLockRangeSync(¶ms); params.ioParam.ioPosOffset = FIRST_LOCKBYTE; - params.ioParam.ioReqCount = 1; + params.ioParam.ioRetqCount = 1; PBUnlockRangeSync(¶ms); } if( res == noErr ){ @@ -550,24 +550,24 @@ int sqlite3OsWriteLock(OsFile *id){ params.ioParam.ioRefNum = id->refNumRF; params.ioParam.ioPosMode = fsFromStart; params.ioParam.ioPosOffset = FIRST_LOCKBYTE; - params.ioParam.ioReqCount = 1; + params.ioParam.ioRetqCount = 1; while( cnt-->0 && (res = PBLockRangeSync(¶ms))!=noErr ){ UInt32 finalTicks; Delay(1, &finalTicks); /* 1/60 sec */ } if( res == noErr ){ params.ioParam.ioPosOffset = FIRST_LOCKBYTE + id->locked; - params.ioParam.ioReqCount = 1; + params.ioParam.ioRetqCount = 1; if( id->locked==0 || PBUnlockRangeSync(¶ms)==noErr ){ params.ioParam.ioPosOffset = FIRST_LOCKBYTE+1; - params.ioParam.ioReqCount = N_LOCKBYTE; + params.ioParam.ioRetqCount = N_LOCKBYTE; res = PBLockRangeSync(¶ms); }else{ res = afpRangeNotLocked; } params.ioParam.ioPosOffset = FIRST_LOCKBYTE; - params.ioParam.ioReqCount = 1; + params.ioParam.ioRetqCount = 1; PBUnlockRangeSync(¶ms); } if( res == noErr ){ @@ -596,13 +596,13 @@ int sqlite3OsUnlock(OsFile *id){ rc = SQLITE_OK; }else if( id->locked<0 ){ params.ioParam.ioPosOffset = FIRST_LOCKBYTE+1; - params.ioParam.ioReqCount = N_LOCKBYTE; + params.ioParam.ioRetqCount = N_LOCKBYTE; PBUnlockRangeSync(¶ms); rc = SQLITE_OK; id->locked = 0; }else{ params.ioParam.ioPosOffset = FIRST_LOCKBYTE+id->locked; - params.ioParam.ioReqCount = 1; + params.ioParam.ioRetqCount = 1; PBUnlockRangeSync(¶ms); rc = SQLITE_OK; id->locked = 0; diff --git a/kexi/3rdparty/kexisql3/src/os_unix.c b/kexi/3rdparty/kexisql3/src/os_unix.c index cf846b93..91ca787e 100644 --- a/kexi/3rdparty/kexisql3/src/os_unix.c +++ b/kexi/3rdparty/kexisql3/src/os_unix.c @@ -147,7 +147,7 @@ ** ** If you close a file descriptor that points to a file that has locks, ** all locks on that file that are owned by the current process are -** released. To work around this problem, each OsFile structure contains +** released. To work around this problem, each OsFile structure tqcontains ** a pointer to an openCnt structure. There is one openCnt structure ** per open inode, which means that multiple OsFiles can point to a single ** openCnt. When an attempt is made to close an OsFile, if there are @@ -680,7 +680,7 @@ int sqlite3OsTempFileName(char *zBuf){ }; static const unsigned char zChars[] = "abcdefghijklmnopqrstuvwxyz" - "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + "ABCDEFGHIJKLMNOPTQRSTUVWXYZ" "0123456789"; int i, j; struct stat buf; diff --git a/kexi/3rdparty/kexisql3/src/os_win.c b/kexi/3rdparty/kexisql3/src/os_win.c index ec7a0840..8c729136 100644 --- a/kexi/3rdparty/kexisql3/src/os_win.c +++ b/kexi/3rdparty/kexisql3/src/os_win.c @@ -104,7 +104,7 @@ static WCHAR *utf8ToUnicode(const char *zFilename){ ** Convert UTF-32 to UTF-8. Space to hold the returned string is ** obtained from sqliteMalloc(). */ -static char *unicodeToUtf8(const WCHAR *zWideFilename){ +static char *tqunicodeToUtf8(const WCHAR *zWideFilename){ int nByte; char *zFilename; @@ -438,7 +438,7 @@ char *sqlite3_temp_directory = 0; int sqlite3OsTempFileName(char *zBuf){ static char zChars[] = "abcdefghijklmnopqrstuvwxyz" - "ABCDEFGHIJKLMNOPQRSTUVWXYZ" + "ABCDEFGHIJKLMNOPTQRSTUVWXYZ" "0123456789"; int i, j; char zTempPath[SQLITE_TEMPNAME_SIZE]; @@ -449,7 +449,7 @@ int sqlite3OsTempFileName(char *zBuf){ char *zMulti; WCHAR zWidePath[SQLITE_TEMPNAME_SIZE]; GetTempPathW(SQLITE_TEMPNAME_SIZE-30, zWidePath); - zMulti = unicodeToUtf8(zWidePath); + zMulti = tqunicodeToUtf8(zWidePath); if( zMulti ){ strncpy(zTempPath, zMulti, SQLITE_TEMPNAME_SIZE-30); zTempPath[SQLITE_TEMPNAME_SIZE-30] = 0; @@ -881,7 +881,7 @@ char *sqlite3OsFullPathname(const char *zRelative){ if( zTemp==0 ) return 0; GetFullPathNameW(zWide, nByte, zTemp, &zNotUsedW); sqliteFree(zWide); - zFull = unicodeToUtf8(zTemp); + zFull = tqunicodeToUtf8(zTemp); sqliteFree(zTemp); }else{ nByte = GetFullPathNameA(zRelative, 0, 0, &zNotUsed) + 1; diff --git a/kexi/3rdparty/kexisql3/src/pager.c b/kexi/3rdparty/kexisql3/src/pager.c index 4b981350..469d05fa 100644 --- a/kexi/3rdparty/kexisql3/src/pager.c +++ b/kexi/3rdparty/kexisql3/src/pager.c @@ -839,7 +839,7 @@ static PgHdr *pager_lookup(Pager *pPager, Pgno pgno){ /* ** Unlock the database and clear the in-memory cache. This routine ** sets the state of the pager back to what it was when it was first -** opened. Any outstanding pages are invalidated and subsequent attempts +** opened. Any outstanding pages are tqinvalidated and subsequent attempts ** to access those pages will likely result in a coredump. */ static void pager_reset(Pager *pPager){ @@ -1076,7 +1076,7 @@ static int pager_playback_one_page(Pager *pPager, OsFile *jfd, int useCksum){ ** ** The master journal file contains the names of all child journals. ** To tell if a master journal can be deleted, check to each of the -** children. If all children are either missing or do not refer to +** tqchildren. If all tqchildren are either missing or do not refer to ** a different master journal, then this master journal can be deleted. */ static int pager_delmaster(const char *zMaster){ @@ -1948,7 +1948,7 @@ int sqlite3pager_truncate(Pager *pPager, Pgno nPage){ ** Shutdown the page cache. Free all memory and close all files. ** ** If a transaction was in progress when this routine is called, that -** transaction is rolled back. All outstanding pages are invalidated +** transaction is rolled back. All outstanding pages are tqinvalidated ** and their memory is freed. Any attempt to use a page associated ** with this page cache after this function returns will likely ** result in a coredump. @@ -2972,7 +2972,7 @@ int sqlite3pager_overwrite(Pager *pPager, Pgno pgno, void *pData){ ** a transaction then removed from the freelist during a later part ** of the same transaction and reused for some other purpose. When it ** is first added to the freelist, this routine is called. When reused, -** the dont_rollback() routine is called. But because the page contains +** the dont_rollback() routine is called. But because the page tqcontains ** critical data, we still need to be sure it gets rolled back in spite ** of the dont_rollback() call. */ diff --git a/kexi/3rdparty/kexisql3/src/parse.c b/kexi/3rdparty/kexisql3/src/parse.c index 668f0012..d763cb29 100644 --- a/kexi/3rdparty/kexisql3/src/parse.c +++ b/kexi/3rdparty/kexisql3/src/parse.c @@ -106,7 +106,7 @@ typedef union { struct LikeOp yy222; IdList* yy240; int yy280; - struct {int value; int mask;} yy359; + struct {int value; int tqmask;} yy359; TriggerStep* yy360; struct AttachKey yy361; Select* yy375; @@ -682,7 +682,7 @@ static const YYCODETYPE yyFallback[] = { 0, /* CONST_FUNC => nothing */ 0, /* SEMI => nothing */ 30, /* EXPLAIN => ID */ - 30, /* QUERY => ID */ + 30, /* TQUERY => ID */ 30, /* PLAN => ID */ 30, /* BEGIN => ID */ 0, /* TRANSACTION => nothing */ @@ -770,7 +770,7 @@ static const YYCODETYPE yyFallback[] = { 0, /* DEFAULT => nothing */ 0, /* NULL => nothing */ 0, /* PRIMARY => nothing */ - 0, /* UNIQUE => nothing */ + 0, /* UNITQUE => nothing */ 0, /* CHECK => nothing */ 0, /* REFERENCES => nothing */ 0, /* COLLATE => nothing */ @@ -888,7 +888,7 @@ static const char *const yyTokenName[] = { "$", "END_OF_FILE", "ILLEGAL", "SPACE", "UNCLOSED_STRING", "COMMENT", "FUNCTION", "COLUMN", "AGG_FUNCTION", "AGG_COLUMN", "CONST_FUNC", "SEMI", - "EXPLAIN", "QUERY", "PLAN", "BEGIN", + "EXPLAIN", "TQUERY", "PLAN", "BEGIN", "TRANSACTION", "DEFERRED", "IMMEDIATE", "EXCLUSIVE", "COMMIT", "END", "ROLLBACK", "CREATE", "TABLE", "TEMP", "LP", "RP", @@ -910,7 +910,7 @@ static const char *const yyTokenName[] = { "STAR", "SLASH", "REM", "CONCAT", "UMINUS", "UPLUS", "BITNOT", "STRING", "JOIN_KW", "CONSTRAINT", "DEFAULT", "NULL", - "PRIMARY", "UNIQUE", "CHECK", "REFERENCES", + "PRIMARY", "UNITQUE", "CHECK", "REFERENCES", "COLLATE", "AUTOINCR", "ON", "DELETE", "UPDATE", "INSERT", "SET", "DEFERRABLE", "FOREIGN", "DROP", "UNION", "ALL", @@ -962,7 +962,7 @@ static const char *const yyRuleName[] = { /* 5 */ "ecmd ::= explain cmdx SEMI", /* 6 */ "explain ::=", /* 7 */ "explain ::= EXPLAIN", - /* 8 */ "explain ::= EXPLAIN QUERY PLAN", + /* 8 */ "explain ::= EXPLAIN TQUERY PLAN", /* 9 */ "cmd ::= BEGIN transtype trans_opt", /* 10 */ "trans_opt ::=", /* 11 */ "trans_opt ::= TRANSACTION", @@ -1011,7 +1011,7 @@ static const char *const yyRuleName[] = { /* 54 */ "ccons ::= NULL onconf", /* 55 */ "ccons ::= NOT NULL onconf", /* 56 */ "ccons ::= PRIMARY KEY sortorder onconf autoinc", - /* 57 */ "ccons ::= UNIQUE onconf", + /* 57 */ "ccons ::= UNITQUE onconf", /* 58 */ "ccons ::= CHECK LP expr RP onconf", /* 59 */ "ccons ::= REFERENCES nm idxlist_opt refargs", /* 60 */ "ccons ::= defer_subclause", @@ -1040,7 +1040,7 @@ static const char *const yyRuleName[] = { /* 83 */ "conslist ::= tcons", /* 84 */ "tcons ::= CONSTRAINT nm", /* 85 */ "tcons ::= PRIMARY KEY LP idxlist autoinc RP onconf", - /* 86 */ "tcons ::= UNIQUE LP idxlist RP onconf", + /* 86 */ "tcons ::= UNITQUE LP idxlist RP onconf", /* 87 */ "tcons ::= CHECK expr onconf", /* 88 */ "tcons ::= FOREIGN KEY LP idxlist RP REFERENCES nm idxlist_opt refargs defer_subclause_opt", /* 89 */ "defer_subclause_opt ::=", @@ -1199,7 +1199,7 @@ static const char *const yyRuleName[] = { /* 242 */ "expritem ::= expr", /* 243 */ "expritem ::=", /* 244 */ "cmd ::= CREATE uniqueflag INDEX nm dbnm ON nm LP idxlist RP onconf", - /* 245 */ "uniqueflag ::= UNIQUE", + /* 245 */ "uniqueflag ::= UNITQUE", /* 246 */ "uniqueflag ::=", /* 247 */ "idxlist_opt ::=", /* 248 */ "idxlist_opt ::= LP idxlist RP", @@ -2164,27 +2164,27 @@ static void yy_reduce( break; case 65: #line 289 "parse.y" -{ yygotominor.yy280 = (yymsp[-1].minor.yy280 & yymsp[0].minor.yy359.mask) | yymsp[0].minor.yy359.value; } +{ yygotominor.yy280 = (yymsp[-1].minor.yy280 & yymsp[0].minor.yy359.tqmask) | yymsp[0].minor.yy359.value; } #line 2170 "parse.c" break; case 66: #line 291 "parse.y" -{ yygotominor.yy359.value = 0; yygotominor.yy359.mask = 0x000000; } +{ yygotominor.yy359.value = 0; yygotominor.yy359.tqmask = 0x000000; } #line 2175 "parse.c" break; case 67: #line 292 "parse.y" -{ yygotominor.yy359.value = yymsp[0].minor.yy280; yygotominor.yy359.mask = 0x0000ff; } +{ yygotominor.yy359.value = yymsp[0].minor.yy280; yygotominor.yy359.tqmask = 0x0000ff; } #line 2180 "parse.c" break; case 68: #line 293 "parse.y" -{ yygotominor.yy359.value = yymsp[0].minor.yy280<<8; yygotominor.yy359.mask = 0x00ff00; } +{ yygotominor.yy359.value = yymsp[0].minor.yy280<<8; yygotominor.yy359.tqmask = 0x00ff00; } #line 2185 "parse.c" break; case 69: #line 294 "parse.y" -{ yygotominor.yy359.value = yymsp[0].minor.yy280<<16; yygotominor.yy359.mask = 0xff0000; } +{ yygotominor.yy359.value = yymsp[0].minor.yy280<<16; yygotominor.yy359.tqmask = 0xff0000; } #line 2190 "parse.c" break; case 70: diff --git a/kexi/3rdparty/kexisql3/src/parse.h b/kexi/3rdparty/kexisql3/src/parse.h index fcedda58..b96836ce 100644 --- a/kexi/3rdparty/kexisql3/src/parse.h +++ b/kexi/3rdparty/kexisql3/src/parse.h @@ -10,7 +10,7 @@ #define TK_CONST_FUNC 10 #define TK_SEMI 11 #define TK_EXPLAIN 12 -#define TK_QUERY 13 +#define TK_TQUERY 13 #define TK_PLAN 14 #define TK_BEGIN 15 #define TK_TRANSACTION 16 @@ -98,7 +98,7 @@ #define TK_DEFAULT 98 #define TK_NULL 99 #define TK_PRIMARY 100 -#define TK_UNIQUE 101 +#define TK_UNITQUE 101 #define TK_CHECK 102 #define TK_REFERENCES 103 #define TK_COLLATE 104 diff --git a/kexi/3rdparty/kexisql3/src/parse.y b/kexi/3rdparty/kexisql3/src/parse.y index b92d2276..c591c99d 100644 --- a/kexi/3rdparty/kexisql3/src/parse.y +++ b/kexi/3rdparty/kexisql3/src/parse.y @@ -207,12 +207,12 @@ ccons ::= COLLATE id(C). {sqlite3AddCollateType(pParse, C.z, C.n);} // %type refargs {int} refargs(A) ::= . { A = OE_Restrict * 0x010101; } -refargs(A) ::= refargs(X) refarg(Y). { A = (X & Y.mask) | Y.value; } -%type refarg {struct {int value; int mask;}} -refarg(A) ::= MATCH nm. { A.value = 0; A.mask = 0x000000; } -refarg(A) ::= ON DELETE refact(X). { A.value = X; A.mask = 0x0000ff; } -refarg(A) ::= ON UPDATE refact(X). { A.value = X<<8; A.mask = 0x00ff00; } -refarg(A) ::= ON INSERT refact(X). { A.value = X<<16; A.mask = 0xff0000; } +refargs(A) ::= refargs(X) refarg(Y). { A = (X & Y.tqmask) | Y.value; } +%type refarg {struct {int value; int tqmask;}} +refarg(A) ::= MATCH nm. { A.value = 0; A.tqmask = 0x000000; } +refarg(A) ::= ON DELETE refact(X). { A.value = X; A.tqmask = 0x0000ff; } +refarg(A) ::= ON UPDATE refact(X). { A.value = X<<8; A.tqmask = 0x00ff00; } +refarg(A) ::= ON INSERT refact(X). { A.value = X<<16; A.tqmask = 0xff0000; } %type refact {int} refact(A) ::= SET NULL. { A = OE_SetNull; } refact(A) ::= SET DEFAULT. { A = OE_SetDflt; } @@ -398,7 +398,7 @@ seltablist(A) ::= stl_prefix(X) LP seltablist_paren(S) RP } // A seltablist_paren nonterminal represents anything in a FROM that -// is contained inside parentheses. This can be either a subquery or +// is contained inside tqparentheses. This can be either a subquery or // a grouping of table and subqueries. // %type seltablist_paren {Select*} diff --git a/kexi/3rdparty/kexisql3/src/pragma.c b/kexi/3rdparty/kexisql3/src/pragma.c index c85c19d5..618ce9e1 100644 --- a/kexi/3rdparty/kexisql3/src/pragma.c +++ b/kexi/3rdparty/kexisql3/src/pragma.c @@ -86,7 +86,7 @@ static int getTempStore(const char *z){ ** Invalidate temp storage, either when the temp storage is changed ** from default, or when 'file' and the temp_store_directory has changed */ -static int invalidateTempStorage(Parse *pParse){ +static int tqinvalidateTempStorage(Parse *pParse){ sqlite3 *db = pParse->db; if( db->aDb[1].pBt!=0 ){ if( db->flags & SQLITE_InTrans ){ @@ -112,7 +112,7 @@ static int changeTempStorage(Parse *pParse, const char *zStorageType){ int ts = getTempStore(zStorageType); sqlite3 *db = pParse->db; if( db->temp_store==ts ) return SQLITE_OK; - if( invalidateTempStorage( pParse ) != SQLITE_OK ){ + if( tqinvalidateTempStorage( pParse ) != SQLITE_OK ){ return SQLITE_ERROR; } db->temp_store = ts; @@ -142,7 +142,7 @@ static void returnSingleInt(Parse *pParse, const char *zLabel, int value){ static int flagPragma(Parse *pParse, const char *zLeft, const char *zRight){ static const struct sPragmaType { const char *zName; /* Name of the pragma */ - int mask; /* Mask for the db->flags value */ + int tqmask; /* Mask for the db->flags value */ } aPragma[] = { { "vdbe_trace", SQLITE_VdbeTrace }, { "sql_trace", SQLITE_SqlTrace }, @@ -164,12 +164,12 @@ static int flagPragma(Parse *pParse, const char *zLeft, const char *zRight){ v = sqlite3GetVdbe(pParse); if( v ){ if( zRight==0 ){ - returnSingleInt(pParse, p->zName, (db->flags & p->mask)!=0 ); + returnSingleInt(pParse, p->zName, (db->flags & p->tqmask)!=0 ); }else{ if( getBoolean(zRight) ){ - db->flags |= p->mask; + db->flags |= p->tqmask; }else{ - db->flags &= ~p->mask; + db->flags &= ~p->tqmask; } } /* If one of these pragmas is executed, any prepared statements @@ -377,7 +377,7 @@ void sqlite3Pragma( ** Return or set the local value of the temp_store_directory flag. Changing ** the value sets a specific directory to be used for temporary files. ** Setting to a null string reverts to the default temporary directory search. - ** If temporary directory is changed, then invalidateTempStorage. + ** If temporary directory is changed, then tqinvalidateTempStorage. ** */ if( sqlite3StrICmp(zLeft, "temp_store_directory")==0 ){ @@ -397,7 +397,7 @@ void sqlite3Pragma( || (TEMP_STORE==1 && db->temp_store<=1) || (TEMP_STORE==2 && db->temp_store==1) ){ - invalidateTempStorage(pParse); + tqinvalidateTempStorage(pParse); } sqliteFree(sqlite3_temp_directory); if( zRight[0] ){ diff --git a/kexi/3rdparty/kexisql3/src/prepare.c b/kexi/3rdparty/kexisql3/src/prepare.c index b3222a82..23bfa533 100644 --- a/kexi/3rdparty/kexisql3/src/prepare.c +++ b/kexi/3rdparty/kexisql3/src/prepare.c @@ -77,7 +77,7 @@ int sqlite3InitCallback(void *pInit, int argc, char **argv, char **azColName){ } }else{ /* If the SQL column is blank it means this is an index that - ** was created to be the PRIMARY KEY or to fulfill a UNIQUE + ** was created to be the PRIMARY KEY or to fulfill a UNITQUE ** constraint for a CREATE TABLE. The index should have already ** been created when we processed the CREATE TABLE. All we have ** to do here is record the root page number for that index. @@ -527,7 +527,7 @@ int sqlite3_prepare16( if( zTail8 && pzTail ){ /* If sqlite3_prepare returns a tail pointer, we calculate the - ** equivalent pointer into the UTF-16 string by counting the unicode + ** equivalent pointer into the UTF-16 string by counting the tqunicode ** characters between zSql8 and zTail8, and then returning a pointer ** the same number of characters into the UTF-16 string. */ diff --git a/kexi/3rdparty/kexisql3/src/select.c b/kexi/3rdparty/kexisql3/src/select.c index 86b22c38..0f465c09 100644 --- a/kexi/3rdparty/kexisql3/src/select.c +++ b/kexi/3rdparty/kexisql3/src/select.c @@ -518,7 +518,7 @@ static int selectInnerLoop( break; } -#ifndef SQLITE_OMIT_SUBQUERY +#ifndef SQLITE_OMIT_SUBTQUERY /* If we are creating a set for an "expr IN (SELECT ...)" construct, ** then there should be a single item on the stack. Write this ** item into the set table with bogus data. @@ -562,7 +562,7 @@ static int selectInnerLoop( } break; } -#endif /* #ifndef SQLITE_OMIT_SUBQUERY */ +#endif /* #ifndef SQLITE_OMIT_SUBTQUERY */ /* Send the data to the callback function or to a subroutine. In the ** case of a subroutine, the subroutine itself is responsible for @@ -671,7 +671,7 @@ static void generateSortTail( sqlite3VdbeAddOp(v, OP_Insert, iParm, 0); break; } -#ifndef SQLITE_OMIT_SUBQUERY +#ifndef SQLITE_OMIT_SUBTQUERY case SRT_Set: { assert( nColumn==1 ); sqlite3VdbeAddOp(v, OP_NotNull, -1, sqlite3VdbeCurrentAddr(v)+3); @@ -773,7 +773,7 @@ static const char *columnType(NameContext *pNC, Expr *pExpr){ } break; } -#ifndef SQLITE_OMIT_SUBQUERY +#ifndef SQLITE_OMIT_SUBTQUERY case TK_SELECT: { NameContext sNC; Select *pS = pExpr->pSelect; @@ -1058,7 +1058,7 @@ static int prepSelectStmt(Parse *pParse, Select *p){ return 0; } if( pFrom->zName==0 ){ -#ifndef SQLITE_OMIT_SUBQUERY +#ifndef SQLITE_OMIT_SUBTQUERY /* A sub-query in the FROM clause of a SELECT */ assert( pFrom->pSelect!=0 ); if( pFrom->zAlias==0 ){ @@ -1961,7 +1961,7 @@ static void substSelect(Select *p, int iTable, ExprList *pEList){ */ static int flattenSubquery( Parse *pParse, /* The parsing context */ - Select *p, /* The parent or outer SELECT statement */ + Select *p, /* The tqparent or outer SELECT statement */ int iFrom, /* Index in p->pSrc->a[] of the inner subquery */ int isAgg, /* True if outer SELECT uses aggregate functions */ int subqueryIsAgg /* True if the subquery uses aggregate functions */ @@ -2038,7 +2038,7 @@ static int flattenSubquery( ** the FROM clause of the outer query. Before doing this, remember ** the cursor number for the original outer query FROM element in ** iParent. The iParent cursor will never be used. Subsequent code - ** will scan expressions looking for iParent references and replace + ** will scan expressions looking for iParent references and tqreplace ** those references with expressions that resolve to the subquery FROM ** elements we are now copying in. */ @@ -2322,7 +2322,7 @@ static int processOrderGroupBy( ** This routine resolves any names used in the result set of the ** supplied SELECT statement. If the SELECT statement being resolved ** is a sub-select, then pOuterNC is a pointer to the NameContext -** of the parent SELECT. +** of the tqparent SELECT. */ int sqlite3SelectResolve( Parse *pParse, /* The parser context */ @@ -2569,10 +2569,10 @@ static void updateAccumulator(Parse *pParse, AggInfo *pAggInfo){ ** This routine does NOT free the Select structure passed in. The ** calling function needs to do that. ** -** The pParent, parentTab, and *pParentAgg fields are filled in if this +** The pParent, tqparentTab, and *pParentAgg fields are filled in if this ** SELECT is a subquery. This routine may try to combine this SELECT -** with its parent to form a single flat query. In so doing, it might -** change the parent query from a non-aggregate to an aggregate query. +** with its tqparent to form a single flat query. In so doing, it might +** change the tqparent query from a non-aggregate to an aggregate query. ** For that reason, the pParentAgg flag is passed as a pointer, so it ** can be changed. ** @@ -2587,7 +2587,7 @@ static void updateAccumulator(Parse *pParse, AggInfo *pAggInfo){ ** pParent will be NULL. During the processing of the outer query, this ** routine is called recursively to handle the subquery. For the recursive ** call, pParent will point to the outer query. Because the subquery is -** the second element in a three-way join, the parentTab parameter will +** the second element in a three-way join, the tqparentTab parameter will ** be 1 (the 2nd value of a 0-indexed array.) */ int sqlite3Select( @@ -2596,7 +2596,7 @@ int sqlite3Select( int eDest, /* How to dispose of the results */ int iParm, /* A parameter used by the eDest disposal method */ Select *pParent, /* Another SELECT for which this is a sub-query */ - int parentTab, /* Index in pParent->pSrc of this query */ + int tqparentTab, /* Index in pParent->pSrc of this query */ int *pParentAgg, /* True if pParent uses aggregate functions */ char *aff /* If eDest is SRT_Union, the affinity string */ ){ @@ -2664,7 +2664,7 @@ int sqlite3Select( ** only a single column may be output. */ assert( eDest!=SRT_Exists || pEList->nExpr==1 ); -#ifndef SQLITE_OMIT_SUBQUERY +#ifndef SQLITE_OMIT_SUBTQUERY if( (eDest==SRT_Mem || eDest==SRT_Set) && pEList->nExpr>1 ){ sqlite3ErrorMsg(pParse, "only a single result allowed for " "a SELECT that is part of an expression"); @@ -2692,7 +2692,7 @@ int sqlite3Select( /* Generate code for all sub-queries in the FROM clause */ -#if !defined(SQLITE_OMIT_SUBQUERY) || !defined(SQLITE_OMIT_VIEW) +#if !defined(SQLITE_OMIT_SUBTQUERY) || !defined(SQLITE_OMIT_VIEW) for(i=0; i<pTabList->nSrc; i++){ const char *zSavedAuthContext = 0; int needRestoreContext; @@ -2730,12 +2730,12 @@ int sqlite3Select( goto select_end; } - /* Check to see if this is a subquery that can be "flattened" into its parent. + /* Check to see if this is a subquery that can be "flattened" into its tqparent. ** If flattening is a possiblity, do so and return immediately. */ #ifndef SQLITE_OMIT_VIEW if( pParent && pParentAgg && - flattenSubquery(pParse, pParent, parentTab, *pParentAgg, isAgg) ){ + flattenSubquery(pParse, pParent, tqparentTab, *pParentAgg, isAgg) ){ if( isAgg ) *pParentAgg = 1; goto select_end; } @@ -3098,17 +3098,17 @@ int sqlite3Select( generateSortTail(pParse, p, v, pEList->nExpr, eDest, iParm); } -#ifndef SQLITE_OMIT_SUBQUERY +#ifndef SQLITE_OMIT_SUBTQUERY /* If this was a subquery, we have now converted the subquery into a - ** temporary table. So delete the subquery structure from the parent + ** temporary table. So delete the subquery structure from the tqparent ** to prevent this subquery from being evaluated again and to force the ** the use of the temporary table. */ if( pParent ){ - assert( pParent->pSrc->nSrc>parentTab ); - assert( pParent->pSrc->a[parentTab].pSelect==p ); + assert( pParent->pSrc->nSrc>tqparentTab ); + assert( pParent->pSrc->a[tqparentTab].pSelect==p ); sqlite3SelectDelete(p); - pParent->pSrc->a[parentTab].pSelect = 0; + pParent->pSrc->a[tqparentTab].pSelect = 0; } #endif diff --git a/kexi/3rdparty/kexisql3/src/sqlite3.h b/kexi/3rdparty/kexisql3/src/sqlite3.h index 414c6cac..be29db69 100644 --- a/kexi/3rdparty/kexisql3/src/sqlite3.h +++ b/kexi/3rdparty/kexisql3/src/sqlite3.h @@ -1248,7 +1248,7 @@ int sqlite3_transfer_bindings(sqlite3_stmt*, sqlite3_stmt*); ** is NULL pointer, then SQLite does a search for an appropriate temporary ** file directory. ** -** Once sqlite3_open() has been called, changing this variable will invalidate +** Once sqlite3_open() has been called, changing this variable will tqinvalidate ** the current temporary database, if any. */ extern char *sqlite3_temp_directory; diff --git a/kexi/3rdparty/kexisql3/src/sqliteInt.h b/kexi/3rdparty/kexisql3/src/sqliteInt.h index 796653e7..74916805 100644 --- a/kexi/3rdparty/kexisql3/src/sqliteInt.h +++ b/kexi/3rdparty/kexisql3/src/sqliteInt.h @@ -104,22 +104,22 @@ /* ** If the following macro is set to 1, then NULL values are considered ** distinct when determining whether or not two entries are the same -** in a UNIQUE index. This is the way PostgreSQL, Oracle, DB2, MySQL, +** in a UNITQUE index. This is the way PostgreSQL, Oracle, DB2, MySQL, ** OCELOT, and Firebird all work. The SQL92 spec explicitly says this ** is the way things are suppose to work. ** ** If the following macro is set to 0, the NULLs are indistinct for -** a UNIQUE index. In this mode, you can only have a single NULL entry -** for a column declared UNIQUE. This is the way Informix and SQL Server +** a UNITQUE index. In this mode, you can only have a single NULL entry +** for a column declared UNITQUE. This is the way Informix and SQL Server ** work. */ -#define NULL_DISTINCT_FOR_UNIQUE 1 +#define NULL_DISTINCT_FOR_UNITQUE 1 /* ** The maximum number of attached databases. This must be at least 2 ** in order to support the main database file (0) and the file used to ** hold temporary tables (1). And it must be less than 32 because -** we use a bitmask of databases with a u32 in places (for example +** we use a bittqmask of databases with a u32 in places (for example ** the Parse.cookieMask field). */ #define MAX_ATTACHED 10 @@ -700,7 +700,7 @@ struct FKey { ** occurs. IGNORE means that the particular row that caused the constraint ** error is not inserted or updated. Processing continues and no error ** is returned. REPLACE means that preexisting database rows that caused -** a UNIQUE constraint violation are removed so that the new insert or +** a UNITQUE constraint violation are removed so that the new insert or ** update can proceed. Processing continues and no error is reported. ** ** RESTRICT, SETNULL, and CASCADE actions apply only to foreign keys. @@ -779,7 +779,7 @@ struct Index { Table *pTable; /* The SQL table being indexed */ int tnum; /* Page containing root of this index in database file */ u8 onError; /* OE_Abort, OE_Ignore, OE_Replace, or OE_None */ - u8 autoIndex; /* True if is automatically created (ex: by UNIQUE) */ + u8 autoIndex; /* True if is automatically created (ex: by UNITQUE) */ u8 iDb; /* Index in sqlite.aDb[] of where this index is stored */ char *zColAff; /* String defining the affinity of each column */ Index *pNext; /* The next index associated with the same table */ @@ -976,9 +976,9 @@ struct IdList { }; /* -** The bitmask datatype defined below is used for various optimizations. +** The bittqmask datatype defined below is used for various optimizations. */ -typedef unsigned int Bitmask; +typedef unsigned int Bittqmask; /* ** The following structure describes the FROM clause of a SELECT statement. @@ -1004,7 +1004,7 @@ struct SrcList { i16 iCursor; /* The VDBE cursor number used to access this table */ Expr *pOn; /* The ON clause of a join */ IdList *pUsing; /* The USING clause of a join */ - Bitmask colUsed; /* Bit N (1<<N) set if column N or pTab is used */ + Bittqmask colUsed; /* Bit N (1<<N) set if column N or pTab is used */ } a[1]; /* One entry for each identifier on the list */ }; @@ -1076,7 +1076,7 @@ struct WhereInfo { ** the context containing the match is incremented. ** ** Each subquery gets a new NameContext. The pNext field points to the -** NameContext in the parent query. Thus the process of scanning the +** NameContext in the tqparent query. Thus the process of scanning the ** NameContext list corresponds to searching through successively outer ** subqueries looking for a match. */ @@ -1176,7 +1176,7 @@ struct Parse { int nMem; /* Number of memory cells used so far */ int nSet; /* Number of sets used so far */ u32 writeMask; /* Start a write transaction on these databases */ - u32 cookieMask; /* Bitmask of schema verified databases */ + u32 cookieMask; /* Bittqmask of schema verified databases */ int cookieGoto; /* Address of OP_Goto to cookie verifier subroutine */ int cookieValue[MAX_ATTACHED+2]; /* Values of cookies to verify */ @@ -1328,9 +1328,9 @@ struct TriggerStep { * * struct TriggerStack has a "pNext" member, to allow linked lists to be * constructed. When coding nested triggers (triggers fired by other triggers) - * each nested trigger stores its parent trigger's TriggerStack as the "pNext" + * each nested trigger stores its tqparent trigger's TriggerStack as the "pNext" * pointer. Once the nested trigger has been coded, the pNext value is restored - * to the pTriggerStack member of the Parse stucture and coding of the parent + * to the pTriggerStack member of the Parse stucture and coding of the tqparent * trigger continues. * * Before a nested trigger is coded, the linked list pointed to by the diff --git a/kexi/3rdparty/kexisql3/src/tclsqlite.c b/kexi/3rdparty/kexisql3/src/tclsqlite.c index 51bde4ee..4387e2f7 100644 --- a/kexi/3rdparty/kexisql3/src/tclsqlite.c +++ b/kexi/3rdparty/kexisql3/src/tclsqlite.c @@ -921,7 +921,7 @@ static int DbObjCmd(void *cd, Tcl_Interp *interp, int objc,Tcl_Obj *const*objv){ ** as column separators. If a column contains a null string, or the ** value of NULLINDICATOR, a NULL is inserted for the column. ** conflict-algorithm is one of the sqlite conflict algorithms: - ** rollback, abort, fail, ignore, replace + ** rollback, abort, fail, ignore, tqreplace ** On success, return the number of lines processed, not necessarily same ** as 'db changes' due to conflict-algorithm selected. ** @@ -982,10 +982,10 @@ static int DbObjCmd(void *cd, Tcl_Interp *interp, int objc,Tcl_Obj *const*objv){ sqlite3StrICmp(zConflict, "abort" ) != 0 && sqlite3StrICmp(zConflict, "fail" ) != 0 && sqlite3StrICmp(zConflict, "ignore" ) != 0 && - sqlite3StrICmp(zConflict, "replace" ) != 0 ) { + sqlite3StrICmp(zConflict, "tqreplace" ) != 0 ) { Tcl_AppendResult(interp, "Error: \"", zConflict, "\", conflict-algorithm must be one of: rollback, " - "abort, fail, ignore, or replace", 0); + "abort, fail, ignore, or tqreplace", 0); return TCL_ERROR; } zSql = sqlite3_mprintf("SELECT * FROM '%q'", zTable); @@ -1822,7 +1822,7 @@ static int DbObjCmd(void *cd, Tcl_Interp *interp, int objc,Tcl_Obj *const*objv){ ** DBNAME that is used to control that connection. The database ** connection is deleted when the DBNAME command is deleted. ** -** The second argument is the name of the directory that contains +** The second argument is the name of the directory that tqcontains ** the sqlite database that is to be accessed. ** ** For testing purposes, we also support the following: diff --git a/kexi/3rdparty/kexisql3/src/trigger.c b/kexi/3rdparty/kexisql3/src/trigger.c index f39d2bd8..610f5090 100644 --- a/kexi/3rdparty/kexisql3/src/trigger.c +++ b/kexi/3rdparty/kexisql3/src/trigger.c @@ -581,7 +581,7 @@ int sqlite3TriggersExist( ExprList *pChanges /* Columns that change in an UPDATE statement */ ){ Trigger *pTrigger = pTab->pTrigger; - int mask = 0; + int tqmask = 0; while( pTrigger ){ if( pTrigger->op==op && checkColumnOverLap(pTrigger->pColumns, pChanges) ){ @@ -591,12 +591,12 @@ int sqlite3TriggersExist( ss = ss->pNext; } if( ss==0 ){ - mask |= pTrigger->tr_tm; + tqmask |= pTrigger->tr_tm; } } pTrigger = pTrigger->pNext; } - return mask; + return tqmask; } /* diff --git a/kexi/3rdparty/kexisql3/src/utf.c b/kexi/3rdparty/kexisql3/src/utf.c index d42ab759..5efbfe78 100644 --- a/kexi/3rdparty/kexisql3/src/utf.c +++ b/kexi/3rdparty/kexisql3/src/utf.c @@ -43,11 +43,11 @@ ** ** When converting malformed UTF-8 strings to UTF-16, one instance of the ** replacement character U+FFFD for each byte that cannot be interpeted as -** part of a valid unicode character. +** part of a valid tqunicode character. ** ** When converting malformed UTF-16 strings to UTF-8, one instance of the ** replacement character U+FFFD for each pair of bytes that cannot be -** interpeted as part of a valid unicode character. +** interpeted as part of a valid tqunicode character. ** ** This file contains the following public routines: ** @@ -427,10 +427,10 @@ int sqlite3VdbeMemHandleBom(Mem *pMem){ #endif /* SQLITE_OMIT_UTF16 */ /* -** pZ is a UTF-8 encoded unicode string. If nByte is less than zero, -** return the number of unicode characters in pZ up to (but not including) +** pZ is a UTF-8 encoded tqunicode string. If nByte is less than zero, +** return the number of tqunicode characters in pZ up to (but not including) ** the first 0x00 byte. If nByte is not less than zero, return the -** number of unicode characters in the first nByte of pZ (or up to +** number of tqunicode characters in the first nByte of pZ (or up to ** the first 0x00, whichever comes first). */ int sqlite3utf8CharLen(const char *z, int nByte){ @@ -451,10 +451,10 @@ int sqlite3utf8CharLen(const char *z, int nByte){ #ifndef SQLITE_OMIT_UTF16 /* -** pZ is a UTF-16 encoded unicode string. If nChar is less than zero, +** pZ is a UTF-16 encoded tqunicode string. If nChar is less than zero, ** return the number of bytes up to (but not including), the first pair ** of consecutive 0x00 bytes in pZ. If nChar is not less than zero, -** then return the number of bytes in the first nChar unicode characters +** then return the number of bytes in the first nChar tqunicode characters ** in pZ (or up until the first pair of 0x00 bytes, whichever comes first). */ int sqlite3utf16ByteLen(const void *zIn, int nChar){ diff --git a/kexi/3rdparty/kexisql3/src/vacuum.c b/kexi/3rdparty/kexisql3/src/vacuum.c index 6f544a6b..8f22c7f8 100644 --- a/kexi/3rdparty/kexisql3/src/vacuum.c +++ b/kexi/3rdparty/kexisql3/src/vacuum.c @@ -212,8 +212,8 @@ int sqlite3RunVacuum(char **pzErrMsg, sqlite3 *db){ " FROM sqlite_master WHERE sql LIKE 'CREATE INDEX %' ", 0); if( rc!=SQLITE_OK ) goto end_of_vacuum; rc = execExecSql(db, - "SELECT 'CREATE UNIQUE INDEX vacuum_db.' || substr(sql,21,100000000) " - " FROM sqlite_master WHERE sql LIKE 'CREATE UNIQUE INDEX %'", 0); + "SELECT 'CREATE UNITQUE INDEX vacuum_db.' || substr(sql,21,100000000) " + " FROM sqlite_master WHERE sql LIKE 'CREATE UNITQUE INDEX %'", 0); if( rc!=SQLITE_OK ) goto end_of_vacuum; rc = execExecSql(db, "SELECT 'CREATE VIEW vacuum_db.' || substr(sql,13,100000000) " diff --git a/kexi/3rdparty/kexisql3/src/vdbe.c b/kexi/3rdparty/kexisql3/src/vdbe.c index abb68aec..c5582b5c 100644 --- a/kexi/3rdparty/kexisql3/src/vdbe.c +++ b/kexi/3rdparty/kexisql3/src/vdbe.c @@ -103,7 +103,7 @@ int sqlite3_sort_count = 0; /* -** An ephemeral string value (signified by the MEM_Ephem flag) contains +** An ephemeral string value (signified by the MEM_Ephem flag) tqcontains ** a pointer to a dynamically allocated string where some other entity ** is responsible for deallocating that string. Because the stack entry ** does not control the string, it might be deleted without the stack @@ -121,7 +121,7 @@ int sqlite3_sort_count = 0; ** Convert the given stack entity into a integer if it isn't one ** already. ** -** Any prior string or real representation is invalidated. +** Any prior string or real representation is tqinvalidated. ** NULLs are converted into 0. */ #define Integerify(P) sqlite3VdbeMemIntegerify(P) @@ -129,7 +129,7 @@ int sqlite3_sort_count = 0; /* ** Convert P so that it has type MEM_Real. ** -** Any prior string or integer representation is invalidated. +** Any prior string or integer representation is tqinvalidated. ** NULLs are converted into 0.0. */ #define Realify(P) sqlite3VdbeMemRealify(P) @@ -508,7 +508,7 @@ int sqlite3VdbeExec( ** case statement is followed by a comment of the form "/# same as ... #/" ** that comment is used to determine the particular value of the opcode. ** -** If a comment on the same line as the "case OP_" construction contains +** If a comment on the same line as the "case OP_" construction tqcontains ** the word "no-push", then the opcode is guarenteed not to grow the ** vdbe stack when it is executed. See function opcode() in ** vdbeaux.c for details. @@ -1103,7 +1103,7 @@ case OP_CollSeq: { /* no-push */ ** defines the function) with P2 arguments taken from the stack. Pop all ** arguments from the stack and push back the result. ** -** P1 is a 32-bit bitmask indicating whether or not each argument to the +** P1 is a 32-bit bittqmask indicating whether or not each argument to the ** function was determined to be constant at compile time. If the first ** argument was constant then bit 0 of P1 is set. This is used to determine ** whether meta data associated with a user function argument using the @@ -1421,7 +1421,7 @@ case OP_ToBlob: { /* no-push */ ** whereas it would normally be NULL. Similarly, NULL==123 is false when ** 0x200 is set but is NULL when the 0x200 bit of P1 is clear. ** -** The least significant byte of P1 (mask 0xff) must be an affinity character - +** The least significant byte of P1 (tqmask 0xff) must be an affinity character - ** 'n', 't', 'i' or 'o' - or 0x00. An attempt is made to coerce both values ** according to the affinity before the comparison is made. If the byte is ** 0x00, then numeric affinity is used. @@ -1676,7 +1676,7 @@ case OP_BitNot: { /* same as TK_BITNOT, no-push */ */ /* ** The magic Explain opcode are only inserted when explain==2 (which -** is to say when the EXPLAIN QUERY PLAN syntax is used.) +** is to say when the EXPLAIN TQUERY PLAN syntax is used.) ** This opcode records information from the optimizer. It is the ** the same as a no-op. This opcodesnever appears in a real VM program. */ @@ -2539,8 +2539,8 @@ case OP_OpenWrite: { /* no-push */ case SQLITE_OK: { int flags = sqlite3BtreeFlags(pCur->pCursor); /* Sanity checking. Only the lower four bits of the flags byte should - ** be used. Bit 3 (mask 0x08) is unpreditable. The lower 3 bits - ** (mask 0x07) should be either 5 (intkey+leafdata for tables) or + ** be used. Bit 3 (tqmask 0x08) is unpreditable. The lower 3 bits + ** (tqmask 0x07) should be either 5 (intkey+leafdata for tables) or ** 2 (zerodata for indices). If these conditions are not met it can ** only mean that we are dealing with a corrupt database file */ @@ -2956,7 +2956,7 @@ case OP_IsUnique: { /* no-push */ } /* The final varint of the key is different from R. Push it onto - ** the stack. (The record number of an entry that violates a UNIQUE + ** the stack. (The record number of an entry that violates a UNITQUE ** constraint.) */ pTos++; @@ -3020,7 +3020,7 @@ case OP_Sequence: { assert( i>=0 && i<p->nCursor ); assert( p->apCsr[i]!=0 ); pTos++; - pTos->i = p->apCsr[i]->seqCount++; + pTos->i = p->apCsr[i]->setqCount++; pTos->flags = MEM_Int; break; } diff --git a/kexi/3rdparty/kexisql3/src/vdbeInt.h b/kexi/3rdparty/kexisql3/src/vdbeInt.h index 1746ee56..dea8465b 100644 --- a/kexi/3rdparty/kexisql3/src/vdbeInt.h +++ b/kexi/3rdparty/kexisql3/src/vdbeInt.h @@ -81,7 +81,7 @@ struct Cursor { u8 *pIncrKey; /* Pointer to pKeyInfo->incrKey */ KeyInfo *pKeyInfo; /* Info about index keys needed by index cursors */ int nField; /* Number of fields in the header */ - i64 seqCount; /* Sequence counter */ + i64 setqCount; /* Sequence counter */ /* Cached information about the header for the data record that the ** cursor is currently pointing to. Only valid if cacheValid is true. @@ -133,7 +133,7 @@ typedef struct Mem Mem; ** No other flags may be set in this case. ** ** If the MEM_Str flag is set then Mem.z points at a string representation. -** Usually this is encoded in the same unicode encoding as the main +** Usually this is encoded in the same tqunicode encoding as the main ** database (see below for exceptions). If the MEM_Term flag is also ** set, then the string is nul terminated. The MEM_Int and MEM_Real ** flags may coexist with the MEM_Str flag. @@ -160,7 +160,7 @@ typedef struct Mem Mem; #define MEM_Agg 0x0400 /* Mem.z points to an agg function context */ -/* A VdbeFunc is just a FuncDef (defined in sqliteInt.h) that contains +/* A VdbeFunc is just a FuncDef (defined in sqliteInt.h) that tqcontains ** additional information about auxiliary information bound to arguments ** of the function. This is used to implement the sqlite3_get_auxdata() ** and sqlite3_set_auxdata() APIs. The "auxdata" is some auxiliary data diff --git a/kexi/3rdparty/kexisql3/src/vdbeaux.c b/kexi/3rdparty/kexisql3/src/vdbeaux.c index cba9c096..6b37312d 100644 --- a/kexi/3rdparty/kexisql3/src/vdbeaux.c +++ b/kexi/3rdparty/kexisql3/src/vdbeaux.c @@ -176,7 +176,7 @@ void sqlite3VdbeResolveLabel(Vdbe *p, int x){ */ static int opcodeNoPush(u8 op){ /* The 10 NOPUSH_MASK_n constants are defined in the automatically - ** generated header file opcodes.h. Each is a 16-bit bitmask, one + ** generated header file opcodes.h. Each is a 16-bit bittqmask, one ** bit corresponding to each opcode implemented by the virtual ** machine in vdbe.c. The bit is true if the word "no-push" appears ** in a comment on the same line as the "case OP_XXX:" in @@ -186,23 +186,23 @@ static int opcodeNoPush(u8 op){ ** to grow the stack when it is executed. Otherwise, it may grow the ** stack by at most one entry. ** - ** NOPUSH_MASK_0 corresponds to opcodes 0 to 15. NOPUSH_MASK_1 contains + ** NOPUSH_MASK_0 corresponds to opcodes 0 to 15. NOPUSH_MASK_1 tqcontains ** one bit for opcodes 16 to 31, and so on. ** - ** 16-bit bitmasks (rather than 32-bit) are specified in opcodes.h + ** 16-bit bittqmasks (rather than 32-bit) are specified in opcodes.h ** because the file is generated by an awk program. Awk manipulates ** all numbers as floating-point and we don't want to risk a rounding ** error if someone builds with an awk that uses (for example) 32-bit ** IEEE floats. */ - static const u32 masks[5] = { + static const u32 tqmasks[5] = { NOPUSH_MASK_0 + (NOPUSH_MASK_1<<16), NOPUSH_MASK_2 + (NOPUSH_MASK_3<<16), NOPUSH_MASK_4 + (NOPUSH_MASK_5<<16), NOPUSH_MASK_6 + (NOPUSH_MASK_7<<16), NOPUSH_MASK_8 + (NOPUSH_MASK_9<<16) }; - return (masks[op>>5] & (1<<(op&0x1F))); + return (tqmasks[op>>5] & (1<<(op&0x1F))); } #ifndef NDEBUG @@ -1326,15 +1326,15 @@ int sqlite3VdbeFinalize(Vdbe *p){ /* ** Call the destructor for each auxdata entry in pVdbeFunc for which -** the corresponding bit in mask is clear. Auxdata entries beyond 31 +** the corresponding bit in tqmask is clear. Auxdata entries beyond 31 ** are always destroyed. To destroy all auxdata entries, call this -** routine with mask==0. +** routine with tqmask==0. */ -void sqlite3VdbeDeleteAuxData(VdbeFunc *pVdbeFunc, int mask){ +void sqlite3VdbeDeleteAuxData(VdbeFunc *pVdbeFunc, int tqmask){ int i; for(i=0; i<pVdbeFunc->nAux; i++){ struct AuxData *pAux = &pVdbeFunc->apAux[i]; - if( (i>31 || !(mask&(1<<i))) && pAux->pAux ){ + if( (i>31 || !(tqmask&(1<<i))) && pAux->pAux ){ if( pAux->xDelete ){ pAux->xDelete(pAux->pAux); } diff --git a/kexi/3rdparty/kexisql3/src/vdbemem.c b/kexi/3rdparty/kexisql3/src/vdbemem.c index 0b7e193b..a7ecce53 100644 --- a/kexi/3rdparty/kexisql3/src/vdbemem.c +++ b/kexi/3rdparty/kexisql3/src/vdbemem.c @@ -151,7 +151,7 @@ int sqlite3VdbeMemNulTerminate(Mem *pMem){ ** are converted using sqlite3_snprintf(). Converting a BLOB to a string ** is a no-op. ** -** Existing representations MEM_Int and MEM_Real are *not* invalidated. +** Existing representations MEM_Int and MEM_Real are *not* tqinvalidated. ** ** A MEM_Null value will never be passed to this function. This function is ** used for converting values to text for returning to the user (i.e. via diff --git a/kexi/3rdparty/kexisql3/src/where.c b/kexi/3rdparty/kexisql3/src/where.c index e63f2763..ab19f288 100644 --- a/kexi/3rdparty/kexisql3/src/where.c +++ b/kexi/3rdparty/kexisql3/src/where.c @@ -21,9 +21,9 @@ #include "sqliteInt.h" /* -** The number of bits in a Bitmask. "BMS" means "BitMask Size". +** The number of bits in a Bittqmask. "BMS" means "BitMask Size". */ -#define BMS (sizeof(Bitmask)*8) +#define BMS (sizeof(Bittqmask)*8) /* ** Determine the number of elements in an array. @@ -61,20 +61,20 @@ typedef struct WhereClause WhereClause; ** where X is a column name and <op> is one of certain operators, ** then WhereTerm.leftCursor and WhereTerm.leftColumn record the ** cursor number and column number for X. WhereTerm.operator records -** the <op> using a bitmask encoding defined by WO_xxx below. The -** use of a bitmask encoding for the operator allows us to search +** the <op> using a bittqmask encoding defined by WO_xxx below. The +** use of a bittqmask encoding for the operator allows us to search ** quickly for terms that match any of several different operators. ** ** prereqRight and prereqAll record sets of cursor numbers, ** but they do so indirectly. A single ExprMaskSet structure translates ** cursor number into bits and the translated bit is stored in the prereq ** fields. The translation is used in order to maximize the number of -** bits that will fit in a Bitmask. The VDBE cursor numbers might be +** bits that will fit in a Bittqmask. The VDBE cursor numbers might be ** spread out over the non-negative integers. For example, the cursor ** numbers might be 3, 8, 9, 10, 20, 23, 41, and 45. The ExprMaskSet ** translates these sparse cursor numbers into consecutive integers ** beginning with 0 in order to make the best possible use of the available -** bits in the Bitmask. So, in the example above, the cursor numbers +** bits in the Bittqmask. So, in the example above, the cursor numbers ** would be mapped into integers 0 through 7. */ typedef struct WhereTerm WhereTerm; @@ -85,10 +85,10 @@ struct WhereTerm { i16 leftColumn; /* Column number of X in "X <op> <expr>" */ u16 operator; /* A WO_xx value describing <op> */ u8 flags; /* Bit flags. See below */ - u8 nChild; /* Number of children that must disable us */ + u8 nChild; /* Number of tqchildren that must disable us */ WhereClause *pWC; /* The clause this term is part of */ - Bitmask prereqRight; /* Bitmask of tables used by pRight */ - Bitmask prereqAll; /* Bitmask of tables referenced by p */ + Bittqmask prereqRight; /* Bittqmask of tables used by pRight */ + Bittqmask prereqAll; /* Bittqmask of tables referenced by p */ }; /* @@ -114,18 +114,18 @@ struct WhereClause { /* ** An instance of the following structure keeps track of a mapping -** between VDBE cursor numbers and bits of the bitmasks in WhereTerm. +** between VDBE cursor numbers and bits of the bittqmasks in WhereTerm. ** ** The VDBE cursor numbers are small integers contained in ** SrcList_item.iCursor and Expr.iTable fields. For any given WHERE ** clause, the cursor numbers might not begin with 0 and they might ** contain gaps in the numbering sequence. But we want to make maximum -** use of the bits in our bitmasks. This structure provides a mapping +** use of the bits in our bittqmasks. This structure provides a mapping ** from the sparse cursor numbers into consecutive integers beginning ** with 0. ** -** If ExprMaskSet.ix[A]==B it means that The A-th bit of a Bitmask -** corresponds VDBE cursor number B. The A-th bit of a bitmask is 1<<A. +** If ExprMaskSet.ix[A]==B it means that The A-th bit of a Bittqmask +** corresponds VDBE cursor number B. The A-th bit of a bittqmask is 1<<A. ** ** For example, if the WHERE clause expression used these VDBE ** cursors: 4, 5, 8, 29, 57, 73. Then the ExprMaskSet structure @@ -141,12 +141,12 @@ struct WhereClause { typedef struct ExprMaskSet ExprMaskSet; struct ExprMaskSet { int n; /* Number of assigned cursor values */ - int ix[sizeof(Bitmask)*8]; /* Cursor assigned to each bit */ + int ix[sizeof(Bittqmask)*8]; /* Cursor assigned to each bit */ }; /* -** Bitmasks for the operators that indices are able to exploit. An +** Bittqmasks for the operators that indices are able to exploit. An ** OR-ed combination of these values can be used when searching for ** terms in the where clause. */ @@ -170,7 +170,7 @@ struct ExprMaskSet { #define WHERE_IDX_ONLY 0x0800 /* Use index only - omit table */ #define WHERE_ORDERBY 0x1000 /* Output will appear in correct order */ #define WHERE_REVERSE 0x2000 /* Scan in reverse order */ -#define WHERE_UNIQUE 0x4000 /* Selects no more than one row */ +#define WHERE_UNITQUE 0x4000 /* Selects no more than one row */ /* ** Initialize a preallocated WhereClause structure. @@ -258,26 +258,26 @@ static void whereSplit(WhereClause *pWC, Expr *pExpr, int op){ } /* -** Initialize an expression mask set +** Initialize an expression tqmask set */ #define initMaskSet(P) memset(P, 0, sizeof(*P)) /* -** Return the bitmask for the given cursor number. Return 0 if +** Return the bittqmask for the given cursor number. Return 0 if ** iCursor is not in the set. */ -static Bitmask getMask(ExprMaskSet *pMaskSet, int iCursor){ +static Bittqmask getMask(ExprMaskSet *pMaskSet, int iCursor){ int i; for(i=0; i<pMaskSet->n; i++){ if( pMaskSet->ix[i]==iCursor ){ - return ((Bitmask)1)<<i; + return ((Bittqmask)1)<<i; } } return 0; } /* -** Create a new mask for cursor iCursor. +** Create a new tqmask for cursor iCursor. ** ** There is one cursor per table in the FROM clause. The number of ** tables in the FROM clause is limited by a test early in the @@ -291,7 +291,7 @@ static void createMask(ExprMaskSet *pMaskSet, int iCursor){ /* ** This routine walks (recursively) an expression tree and generates -** a bitmask indicating which tables are used in that expression +** a bittqmask indicating which tables are used in that expression ** tree. ** ** In order for this routine to work, the calling function must have @@ -300,46 +300,46 @@ static void createMask(ExprMaskSet *pMaskSet, int iCursor){ ** The sqlite3ExprResolveNames() routines looks for column names and ** sets their opcodes to TK_COLUMN and their Expr.iTable fields to ** the VDBE cursor number of the table. This routine just has to -** translate the cursor numbers into bitmask values and OR all -** the bitmasks together. +** translate the cursor numbers into bittqmask values and OR all +** the bittqmasks together. */ -static Bitmask exprListTableUsage(ExprMaskSet*, ExprList*); -static Bitmask exprSelectTableUsage(ExprMaskSet*, Select*); -static Bitmask exprTableUsage(ExprMaskSet *pMaskSet, Expr *p){ - Bitmask mask = 0; +static Bittqmask exprListTableUsage(ExprMaskSet*, ExprList*); +static Bittqmask exprSelectTableUsage(ExprMaskSet*, Select*); +static Bittqmask exprTableUsage(ExprMaskSet *pMaskSet, Expr *p){ + Bittqmask tqmask = 0; if( p==0 ) return 0; if( p->op==TK_COLUMN ){ - mask = getMask(pMaskSet, p->iTable); - return mask; + tqmask = getMask(pMaskSet, p->iTable); + return tqmask; } - mask = exprTableUsage(pMaskSet, p->pRight); - mask |= exprTableUsage(pMaskSet, p->pLeft); - mask |= exprListTableUsage(pMaskSet, p->pList); - mask |= exprSelectTableUsage(pMaskSet, p->pSelect); - return mask; + tqmask = exprTableUsage(pMaskSet, p->pRight); + tqmask |= exprTableUsage(pMaskSet, p->pLeft); + tqmask |= exprListTableUsage(pMaskSet, p->pList); + tqmask |= exprSelectTableUsage(pMaskSet, p->pSelect); + return tqmask; } -static Bitmask exprListTableUsage(ExprMaskSet *pMaskSet, ExprList *pList){ +static Bittqmask exprListTableUsage(ExprMaskSet *pMaskSet, ExprList *pList){ int i; - Bitmask mask = 0; + Bittqmask tqmask = 0; if( pList ){ for(i=0; i<pList->nExpr; i++){ - mask |= exprTableUsage(pMaskSet, pList->a[i].pExpr); + tqmask |= exprTableUsage(pMaskSet, pList->a[i].pExpr); } } - return mask; + return tqmask; } -static Bitmask exprSelectTableUsage(ExprMaskSet *pMaskSet, Select *pS){ - Bitmask mask; +static Bittqmask exprSelectTableUsage(ExprMaskSet *pMaskSet, Select *pS){ + Bittqmask tqmask; if( pS==0 ){ - mask = 0; + tqmask = 0; }else{ - mask = exprListTableUsage(pMaskSet, pS->pEList); - mask |= exprListTableUsage(pMaskSet, pS->pGroupBy); - mask |= exprListTableUsage(pMaskSet, pS->pOrderBy); - mask |= exprTableUsage(pMaskSet, pS->pWhere); - mask |= exprTableUsage(pMaskSet, pS->pHaving); + tqmask = exprListTableUsage(pMaskSet, pS->pEList); + tqmask |= exprListTableUsage(pMaskSet, pS->pGroupBy); + tqmask |= exprListTableUsage(pMaskSet, pS->pOrderBy); + tqmask |= exprTableUsage(pMaskSet, pS->pWhere); + tqmask |= exprTableUsage(pMaskSet, pS->pHaving); } - return mask; + return tqmask; } /* @@ -379,7 +379,7 @@ static void exprCommute(Expr *pExpr){ } /* -** Translate from TK_xx operator to WO_xx bitmask. +** Translate from TK_xx operator to WO_xx bittqmask. */ static int operatorMask(int op){ int c; @@ -408,7 +408,7 @@ static WhereTerm *findTerm( WhereClause *pWC, /* The WHERE clause to be searched */ int iCur, /* Cursor number of LHS */ int iColumn, /* Column number of LHS */ - Bitmask notReady, /* RHS must not overlap with this mask */ + Bittqmask notReady, /* RHS must not overlap with this tqmask */ u16 op, /* Mask of WO_xx values describing operator */ Index *pIdx /* Must be compatible with this index, if not NULL */ ){ @@ -458,7 +458,7 @@ static void exprAnalyze(SrcList*, ExprMaskSet*, WhereClause*, int); */ static void exprAnalyzeAll( SrcList *pTabList, /* the FROM clause */ - ExprMaskSet *pMaskSet, /* table masks */ + ExprMaskSet *pMaskSet, /* table tqmasks */ WhereClause *pWC /* the WHERE clause to be analyzed */ ){ int i; @@ -536,14 +536,14 @@ static int isLikeOrGlob( */ static void exprAnalyze( SrcList *pSrc, /* the FROM clause */ - ExprMaskSet *pMaskSet, /* table masks */ + ExprMaskSet *pMaskSet, /* table tqmasks */ WhereClause *pWC, /* the WHERE clause */ int idxTerm /* Index of the term to be analyzed */ ){ WhereTerm *pTerm = &pWC->a[idxTerm]; Expr *pExpr = pTerm->pExpr; - Bitmask prereqLeft; - Bitmask prereqAll; + Bittqmask prereqLeft; + Bittqmask prereqAll; int nPattern; int isComplete; @@ -747,7 +747,7 @@ or_not_possible: ** clause and the match can still be a success. ** ** All terms of the ORDER BY that match against the index must be either -** ASC or DESC. (Terms of the ORDER BY clause past the end of a UNIQUE +** ASC or DESC. (Terms of the ORDER BY clause past the end of a UNITQUE ** index do not need to satisfy this constraint.) The *pbRev value is ** set to 1 if the ORDER BY clause is all DESC and it is set to 0 if ** the ORDER BY clause is all ASC. @@ -885,7 +885,7 @@ static double bestIndex( Parse *pParse, /* The parsing context */ WhereClause *pWC, /* The WHERE clause */ struct SrcList_item *pSrc, /* The FROM clause term to search */ - Bitmask notReady, /* Mask of cursors that are not available */ + Bittqmask notReady, /* Mask of cursors that are not available */ ExprList *pOrderBy, /* The order by clause */ Index **ppIndex, /* Make *ppIndex point to the best index */ int *pFlags, /* Put flags describing this choice in *pFlags */ @@ -915,7 +915,7 @@ static double bestIndex( if( pTerm->operator & WO_EQ ){ /* Rowid== is always the best pick. Look no further. Because only ** a single row is generated, output is always in sorted order */ - *pFlags = WHERE_ROWID_EQ | WHERE_UNIQUE; + *pFlags = WHERE_ROWID_EQ | WHERE_UNITQUE; *pnEq = 1; TRACE(("... best is rowid\n")); return 0.0; @@ -1007,7 +1007,7 @@ static double bestIndex( nEq = i; if( pProbe->onError!=OE_None && (flags & WHERE_COLUMN_IN)==0 && nEq==pProbe->nColumn ){ - flags |= WHERE_UNIQUE; + flags |= WHERE_UNITQUE; } TRACE(("...... nEq=%d inMult=%.9g cost=%.9g\n", nEq, inMultiplier, cost)); @@ -1052,13 +1052,13 @@ static double bestIndex( ** ever reading the table. If that is the case, then halve the ** cost of this index. */ - if( flags && pSrc->colUsed < (((Bitmask)1)<<(BMS-1)) ){ - Bitmask m = pSrc->colUsed; + if( flags && pSrc->colUsed < (((Bittqmask)1)<<(BMS-1)) ){ + Bittqmask m = pSrc->colUsed; int j; for(j=0; j<pProbe->nColumn; j++){ int x = pProbe->aiColumn[j]; if( x<BMS-1 ){ - m &= ~(((Bitmask)1)<<x); + m &= ~(((Bittqmask)1)<<x); } } if( m==0 ){ @@ -1169,7 +1169,7 @@ static void codeEqualityTerm( if( pX->op!=TK_IN ){ assert( pX->op==TK_EQ ); sqlite3ExprCode(pParse, pX->pRight); -#ifndef SQLITE_OMIT_SUBQUERY +#ifndef SQLITE_OMIT_SUBTQUERY }else{ int iTab; int *aIn; @@ -1223,7 +1223,7 @@ static void codeAllEqualityTerms( Parse *pParse, /* Parsing context */ WhereLevel *pLevel, /* Which nested loop of the FROM we are coding */ WhereClause *pWC, /* The WHERE clause */ - Bitmask notReady, /* Which parts of FROM have not yet been coded */ + Bittqmask notReady, /* Which parts of FROM have not yet been coded */ int brk /* Jump here to end the loop */ ){ int nEq = pLevel->nEq; /* The number of == or IN constraints to code */ @@ -1276,7 +1276,7 @@ static void codeAllEqualityTerms( ** analysis only. */ char sqlite3_query_plan[BMS*2*40]; /* Text of the join */ -static int nQPlan = 0; /* Next free slow in _query_plan[] */ +static int nTQPlan = 0; /* Next free slow in _query_plan[] */ #endif /* SQLITE_TEST */ @@ -1284,7 +1284,7 @@ static int nQPlan = 0; /* Next free slow in _query_plan[] */ /* ** Generate the beginning of the loop used for WHERE clause processing. -** The return value is a pointer to an opaque structure that contains +** The return value is a pointer to an opaque structure that tqcontains ** information needed to terminate the loop. Later, the calling routine ** should invoke sqlite3WhereEnd() with the return value of this function ** in order to complete the WHERE clause processing. @@ -1380,9 +1380,9 @@ WhereInfo *sqlite3WhereBegin( WhereInfo *pWInfo; /* Will become the return value of this function */ Vdbe *v = pParse->pVdbe; /* The virtual database engine */ int brk, cont = 0; /* Addresses used during code generation */ - Bitmask notReady; /* Cursors that are not yet positioned */ + Bittqmask notReady; /* Cursors that are not yet positioned */ WhereTerm *pTerm; /* A single term in the WHERE clause */ - ExprMaskSet maskSet; /* The expression mask set */ + ExprMaskSet tqmaskSet; /* The expression tqmask set */ WhereClause wc; /* The WHERE clause is divided into these terms */ struct SrcList_item *pTabItem; /* A single entry from pTabList */ WhereLevel *pLevel; /* A single level in the pWInfo list */ @@ -1390,7 +1390,7 @@ WhereInfo *sqlite3WhereBegin( int andFlags; /* AND-ed combination of all wc.a[].flags */ /* The number of tables in the FROM clause is limited by the number of - ** bits in a Bitmask + ** bits in a Bittqmask */ if( pTabList->nSrc>BMS ){ sqlite3ErrorMsg(pParse, "at most %d tables in a join", BMS); @@ -1400,7 +1400,7 @@ WhereInfo *sqlite3WhereBegin( /* Split the WHERE clause into separate subexpressions where each ** subexpression is separated by an AND operator. */ - initMaskSet(&maskSet); + initMaskSet(&tqmaskSet); whereClauseInit(&wc, pParse); whereSplit(&wc, pWhere, TK_AND); @@ -1429,9 +1429,9 @@ WhereInfo *sqlite3WhereBegin( ** and work forward so that the added virtual terms are never processed. */ for(i=0; i<pTabList->nSrc; i++){ - createMask(&maskSet, pTabList->a[i].iCursor); + createMask(&tqmaskSet, pTabList->a[i].iCursor); } - exprAnalyzeAll(pTabList, &maskSet, &wc); + exprAnalyzeAll(pTabList, &tqmaskSet, &wc); if( sqlite3_malloc_failed ){ goto whereBeginNoMem; } @@ -1450,7 +1450,7 @@ WhereInfo *sqlite3WhereBegin( ** This loop also figures out the nesting order of tables in the FROM ** clause. */ - notReady = ~(Bitmask)0; + notReady = ~(Bittqmask)0; pTabItem = pTabList->a; pLevel = pWInfo->a; andFlags = ~0; @@ -1466,10 +1466,10 @@ WhereInfo *sqlite3WhereBegin( int bestNEq = 0; /* nEq associated with pBest */ double lowestCost = 1.0e99; /* Cost of the pBest */ int bestJ; /* The value of j */ - Bitmask m; /* Bitmask value for j or bestJ */ + Bittqmask m; /* Bittqmask value for j or bestJ */ for(j=iFrom, pTabItem=&pTabList->a[j]; j<pTabList->nSrc; j++, pTabItem++){ - m = getMask(&maskSet, pTabItem->iCursor); + m = getMask(&tqmaskSet, pTabItem->iCursor); if( (m & notReady)==0 ){ if( j==iFrom ) iFrom++; continue; @@ -1506,7 +1506,7 @@ WhereInfo *sqlite3WhereBegin( }else{ pLevel->iIdxCur = -1; } - notReady &= ~getMask(&maskSet, pTabList->a[bestJ].iCursor); + notReady &= ~getMask(&tqmaskSet, pTabList->a[bestJ].iCursor); pLevel->iFrom = bestJ; } TRACE(("*** Optimizer Finished ***\n")); @@ -1514,7 +1514,7 @@ WhereInfo *sqlite3WhereBegin( /* If the total query only selects a single row, then the ORDER BY ** clause is irrelevant. */ - if( (andFlags & WHERE_UNIQUE)!=0 && ppOrderBy ){ + if( (andFlags & WHERE_UNITQUE)!=0 && ppOrderBy ){ *ppOrderBy = 0; } @@ -1566,7 +1566,7 @@ WhereInfo *sqlite3WhereBegin( ** loop below generates code for a single nested loop of the VM ** program. */ - notReady = ~(Bitmask)0; + notReady = ~(Bittqmask)0; for(i=0, pLevel=pWInfo->a; i<pTabList->nSrc; i++, pLevel++){ int j; int iCur = pTabItem->iCursor; /* The VDBE cursor for the table */ @@ -1854,7 +1854,7 @@ WhereInfo *sqlite3WhereBegin( pLevel->p1 = iCur; pLevel->p2 = 1 + sqlite3VdbeAddOp(v, OP_Rewind, iCur, brk); } - notReady &= ~getMask(&maskSet, iCur); + notReady &= ~getMask(&tqmaskSet, iCur); /* Insert code to test every subexpression that can be completely ** computed using the current set of tables. @@ -1904,36 +1904,36 @@ WhereInfo *sqlite3WhereBegin( z = pTabItem->zAlias; if( z==0 ) z = pTabItem->pTab->zName; n = strlen(z); - if( n+nQPlan < sizeof(sqlite3_query_plan)-10 ){ + if( n+nTQPlan < sizeof(sqlite3_query_plan)-10 ){ if( pLevel->flags & WHERE_IDX_ONLY ){ - strcpy(&sqlite3_query_plan[nQPlan], "{}"); - nQPlan += 2; + strcpy(&sqlite3_query_plan[nTQPlan], "{}"); + nTQPlan += 2; }else{ - strcpy(&sqlite3_query_plan[nQPlan], z); - nQPlan += n; + strcpy(&sqlite3_query_plan[nTQPlan], z); + nTQPlan += n; } - sqlite3_query_plan[nQPlan++] = ' '; + sqlite3_query_plan[nTQPlan++] = ' '; } if( pLevel->flags & (WHERE_ROWID_EQ|WHERE_ROWID_RANGE) ){ - strcpy(&sqlite3_query_plan[nQPlan], "* "); - nQPlan += 2; + strcpy(&sqlite3_query_plan[nTQPlan], "* "); + nTQPlan += 2; }else if( pLevel->pIdx==0 ){ - strcpy(&sqlite3_query_plan[nQPlan], "{} "); - nQPlan += 3; + strcpy(&sqlite3_query_plan[nTQPlan], "{} "); + nTQPlan += 3; }else{ n = strlen(pLevel->pIdx->zName); - if( n+nQPlan < sizeof(sqlite3_query_plan)-2 ){ - strcpy(&sqlite3_query_plan[nQPlan], pLevel->pIdx->zName); - nQPlan += n; - sqlite3_query_plan[nQPlan++] = ' '; + if( n+nTQPlan < sizeof(sqlite3_query_plan)-2 ){ + strcpy(&sqlite3_query_plan[nTQPlan], pLevel->pIdx->zName); + nTQPlan += n; + sqlite3_query_plan[nTQPlan++] = ' '; } } } - while( nQPlan>0 && sqlite3_query_plan[nQPlan-1]==' ' ){ - sqlite3_query_plan[--nQPlan] = 0; + while( nTQPlan>0 && sqlite3_query_plan[nTQPlan-1]==' ' ){ + sqlite3_query_plan[--nTQPlan] = 0; } - sqlite3_query_plan[nQPlan] = 0; - nQPlan = 0; + sqlite3_query_plan[nTQPlan] = 0; + nTQPlan = 0; #endif /* SQLITE_TEST // Testing and debugging use only */ /* Record the continuation address in the WhereInfo structure. Then |