Many hyperlinks are disabled.
Use anonymous login
to enable hyperlinks.
Overview
Comment: | Fix some warnings under MSVC in fts3 module. |
---|---|
Downloads: | Tarball | ZIP archive |
Timelines: | family | ancestors | descendants | both | trunk |
Files: | files | file ages | folders |
SHA1: |
c7771c0b22f2b45a47070cf84b9ecf10 |
User & Date: | shaneh 2010-12-01 15:36:01.000 |
Context
2010-12-01
| ||
19:00 | Change the type of a variable in struct SrcList so that it fits in a 100 byte lookaside buffer on a 64-bit architecture. (check-in: 7df43f4892 user: dan tags: trunk) | |
15:36 | Fix some warnings under MSVC in fts3 module. (check-in: c7771c0b22 user: shaneh tags: trunk) | |
11:46 | Add test file e_resolve.test. (check-in: 6858df9c72 user: dan tags: trunk) | |
Changes
configure became a regular file.
︙ | ︙ |
Changes to ext/fts3/fts3.c.
︙ | ︙ | |||
652 653 654 655 656 657 658 | const char *zCsr = z; while( *zCsr!='=' ){ if( *zCsr=='\0' ) return 0; zCsr++; } | | | 652 653 654 655 656 657 658 659 660 661 662 663 664 665 666 | const char *zCsr = z; while( *zCsr!='=' ){ if( *zCsr=='\0' ) return 0; zCsr++; } *pnKey = (int)(zCsr-z); zValue = sqlite3_mprintf("%s", &zCsr[1]); if( zValue ){ sqlite3Fts3Dequote(zValue); } *pzValue = zValue; return 1; } |
︙ | ︙ | |||
707 708 709 710 711 712 713 | ); nDb = (int)strlen(argv[1]) + 1; nName = (int)strlen(argv[2]) + 1; aCol = (const char **)sqlite3_malloc(sizeof(const char *) * (argc-2) ); if( !aCol ) return SQLITE_NOMEM; | | | 707 708 709 710 711 712 713 714 715 716 717 718 719 720 721 | ); nDb = (int)strlen(argv[1]) + 1; nName = (int)strlen(argv[2]) + 1; aCol = (const char **)sqlite3_malloc(sizeof(const char *) * (argc-2) ); if( !aCol ) return SQLITE_NOMEM; memset((void *)aCol, 0, sizeof(const char *) * (argc-2)); /* Loop through all of the arguments passed by the user to the FTS3/4 ** module (i.e. all the column names and special arguments). This loop ** does the following: ** ** + Figures out the number of columns the FTSX table will have, and ** the number of bytes of space that must be allocated to store copies |
︙ | ︙ | |||
839 840 841 842 843 844 845 | fts3DatabasePageSize(&rc, p); /* Declare the table schema to SQLite. */ fts3DeclareVtab(&rc, p); fts3_init_out: | | | 839 840 841 842 843 844 845 846 847 848 849 850 851 852 853 | fts3DatabasePageSize(&rc, p); /* Declare the table schema to SQLite. */ fts3DeclareVtab(&rc, p); fts3_init_out: sqlite3_free((void *)aCol); if( rc!=SQLITE_OK ){ if( p ){ fts3DisconnectMethod((sqlite3_vtab *)p); }else if( pTokenizer ){ pTokenizer->pModule->xDestroy(pTokenizer); } }else{ |
︙ | ︙ | |||
2195 2196 2197 2198 2199 2200 2201 | while( p<aEnd ){ sqlite3_int64 delta; p += sqlite3Fts3GetVarint(p, &delta); fts3PoslistCopy(0, &p); pOut += sqlite3Fts3PutVarint(pOut, delta); } | | | 2195 2196 2197 2198 2199 2200 2201 2202 2203 2204 2205 2206 2207 2208 2209 | while( p<aEnd ){ sqlite3_int64 delta; p += sqlite3Fts3GetVarint(p, &delta); fts3PoslistCopy(0, &p); pOut += sqlite3Fts3PutVarint(pOut, delta); } *pnList = (int)(pOut - aList); } } /* ** Return a DocList corresponding to the phrase *pPhrase. ** ** If this function returns SQLITE_OK, but *pnOut is set to a negative value, |
︙ | ︙ |
Changes to ext/fts3/fts3_snippet.c.
︙ | ︙ | |||
1028 1029 1030 1031 1032 1033 1034 | pRead += sqlite3Fts3GetVarint(pRead, &iRead); if( iRead==0 ){ pIter->iCol = LCS_ITERATOR_FINISHED; rc = 1; }else{ if( iRead==1 ){ pRead += sqlite3Fts3GetVarint(pRead, &iRead); | | | | 1028 1029 1030 1031 1032 1033 1034 1035 1036 1037 1038 1039 1040 1041 1042 1043 1044 1045 1046 1047 | pRead += sqlite3Fts3GetVarint(pRead, &iRead); if( iRead==0 ){ pIter->iCol = LCS_ITERATOR_FINISHED; rc = 1; }else{ if( iRead==1 ){ pRead += sqlite3Fts3GetVarint(pRead, &iRead); pIter->iCol = (int)iRead; pIter->iPos = pIter->iPosOffset; pRead += sqlite3Fts3GetVarint(pRead, &iRead); rc = 1; } pIter->iPos += (int)(iRead-2); } pIter->pRead = pRead; return rc; } /* |
︙ | ︙ | |||
1182 1183 1184 1185 1186 1187 1188 | rc = fts3MatchinfoSelectDoctotal(pTab, &pSelect, &nDoc, &a); if( rc==SQLITE_OK ){ int iCol; for(iCol=0; iCol<pInfo->nCol; iCol++){ sqlite3_int64 nToken; a += sqlite3Fts3GetVarint(a, &nToken); | | | 1182 1183 1184 1185 1186 1187 1188 1189 1190 1191 1192 1193 1194 1195 1196 | rc = fts3MatchinfoSelectDoctotal(pTab, &pSelect, &nDoc, &a); if( rc==SQLITE_OK ){ int iCol; for(iCol=0; iCol<pInfo->nCol; iCol++){ sqlite3_int64 nToken; a += sqlite3Fts3GetVarint(a, &nToken); pInfo->aMatchinfo[iCol] = (u32)(((u32)(nToken&0xffffffff)+nDoc/2)/nDoc); } } } break; case FTS3_MATCHINFO_LENGTH: { sqlite3_stmt *pSelectDocsize = 0; |
︙ | ︙ | |||
1285 1286 1287 1288 1289 1290 1291 | /* Determine the number of integers in the buffer returned by this call. */ for(i=0; zArg[i]; i++){ nMatchinfo += fts3MatchinfoSize(&sInfo, zArg[i]); } /* Allocate space for Fts3Cursor.aMatchinfo[] and Fts3Cursor.zMatchinfo. */ | | | 1285 1286 1287 1288 1289 1290 1291 1292 1293 1294 1295 1296 1297 1298 1299 | /* Determine the number of integers in the buffer returned by this call. */ for(i=0; zArg[i]; i++){ nMatchinfo += fts3MatchinfoSize(&sInfo, zArg[i]); } /* Allocate space for Fts3Cursor.aMatchinfo[] and Fts3Cursor.zMatchinfo. */ nArg = (int)strlen(zArg); pCsr->aMatchinfo = (u32 *)sqlite3_malloc(sizeof(u32)*nMatchinfo + nArg + 1); if( !pCsr->aMatchinfo ) return SQLITE_NOMEM; pCsr->zMatchinfo = (char *)&pCsr->aMatchinfo[nMatchinfo]; pCsr->nMatchinfo = nMatchinfo; memcpy(pCsr->zMatchinfo, zArg, nArg+1); memset(pCsr->aMatchinfo, 0, sizeof(u32)*nMatchinfo); |
︙ | ︙ |
Changes to ext/fts3/fts3_write.c.
︙ | ︙ | |||
1112 1113 1114 1115 1116 1117 1118 | const char *pEnd = &a[sqlite3_column_bytes(pStmt, 0)]; a += sqlite3Fts3GetVarint(a, &nDoc); while( a<pEnd ){ a += sqlite3Fts3GetVarint(a, &nByte); } } | | | 1112 1113 1114 1115 1116 1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 | const char *pEnd = &a[sqlite3_column_bytes(pStmt, 0)]; a += sqlite3Fts3GetVarint(a, &nDoc); while( a<pEnd ){ a += sqlite3Fts3GetVarint(a, &nByte); } } pCsr->nRowAvg = (int)(((nByte / nDoc) + pgsz - 1) / pgsz); } rc = sqlite3_reset(pStmt); if( rc!=SQLITE_OK || pCsr->nRowAvg==0 ) return rc; } /* Assume that a blob flows over onto overflow pages if it is larger ** than (pgsz-35) bytes in size (the file-format documentation |
︙ | ︙ |
install-sh became a regular file.
︙ | ︙ |