Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(404)

Side by Side Diff: third_party/sqlite/src/ext/misc/fuzzer.c

Issue 1610963002: Import SQLite 3.10.2. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Created 4 years, 11 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « third_party/sqlite/src/ext/misc/eval.c ('k') | third_party/sqlite/src/ext/misc/ieee754.c » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
1 /* 1 /*
2 ** 2011 March 24 2 ** 2011 March 24
3 ** 3 **
4 ** The author disclaims copyright to this source code. In place of 4 ** The author disclaims copyright to this source code. In place of
5 ** a legal notice, here is a blessing: 5 ** a legal notice, here is a blessing:
6 ** 6 **
7 ** May you do good and not evil. 7 ** May you do good and not evil.
8 ** May you find forgiveness for yourself and forgive others. 8 ** May you find forgiveness for yourself and forgive others.
9 ** May you share freely, never taking more than you give. 9 ** May you share freely, never taking more than you give.
10 ** 10 **
(...skipping 324 matching lines...) Expand 10 before | Expand all | Expand 10 after
335 p->zClassName, FUZZER_MX_RULEID 335 p->zClassName, FUZZER_MX_RULEID
336 ); 336 );
337 rc = SQLITE_ERROR; 337 rc = SQLITE_ERROR;
338 }else{ 338 }else{
339 339
340 pRule = sqlite3_malloc( sizeof(*pRule) + nFrom + nTo ); 340 pRule = sqlite3_malloc( sizeof(*pRule) + nFrom + nTo );
341 if( pRule==0 ){ 341 if( pRule==0 ){
342 rc = SQLITE_NOMEM; 342 rc = SQLITE_NOMEM;
343 }else{ 343 }else{
344 memset(pRule, 0, sizeof(*pRule)); 344 memset(pRule, 0, sizeof(*pRule));
345 pRule->zFrom = &pRule->zTo[nTo+1]; 345 pRule->zFrom = pRule->zTo;
346 pRule->zFrom += nTo + 1;
346 pRule->nFrom = nFrom; 347 pRule->nFrom = nFrom;
347 memcpy(pRule->zFrom, zFrom, nFrom+1); 348 memcpy(pRule->zFrom, zFrom, nFrom+1);
348 memcpy(pRule->zTo, zTo, nTo+1); 349 memcpy(pRule->zTo, zTo, nTo+1);
349 pRule->nTo = nTo; 350 pRule->nTo = nTo;
350 pRule->rCost = nCost; 351 pRule->rCost = nCost;
351 pRule->iRuleset = (int)iRuleset; 352 pRule->iRuleset = (int)iRuleset;
352 } 353 }
353 } 354 }
354 355
355 *ppRule = pRule; 356 *ppRule = pRule;
(...skipping 512 matching lines...) Expand 10 before | Expand all | Expand 10 after
868 fuzzer_cost rBaseCost 869 fuzzer_cost rBaseCost
869 ){ 870 ){
870 fuzzer_stem *pNew; 871 fuzzer_stem *pNew;
871 fuzzer_rule *pRule; 872 fuzzer_rule *pRule;
872 unsigned int h; 873 unsigned int h;
873 874
874 pNew = sqlite3_malloc( sizeof(*pNew) + (int)strlen(zWord) + 1 ); 875 pNew = sqlite3_malloc( sizeof(*pNew) + (int)strlen(zWord) + 1 );
875 if( pNew==0 ) return 0; 876 if( pNew==0 ) return 0;
876 memset(pNew, 0, sizeof(*pNew)); 877 memset(pNew, 0, sizeof(*pNew));
877 pNew->zBasis = (char*)&pNew[1]; 878 pNew->zBasis = (char*)&pNew[1];
878 pNew->nBasis = (int)strlen(zWord); 879 pNew->nBasis = (fuzzer_len)strlen(zWord);
879 memcpy(pNew->zBasis, zWord, pNew->nBasis+1); 880 memcpy(pNew->zBasis, zWord, pNew->nBasis+1);
880 pRule = pCur->pVtab->pRule; 881 pRule = pCur->pVtab->pRule;
881 while( fuzzerSkipRule(pRule, pNew, pCur->iRuleset) ){ 882 while( fuzzerSkipRule(pRule, pNew, pCur->iRuleset) ){
882 pRule = pRule->pNext; 883 pRule = pRule->pNext;
883 } 884 }
884 pNew->pRule = pRule; 885 pNew->pRule = pRule;
885 pNew->n = -1; 886 pNew->n = -1;
886 pNew->rBaseCost = pNew->rCostX = rBaseCost; 887 pNew->rBaseCost = pNew->rCostX = rBaseCost;
887 h = fuzzerHash(pNew->zBasis); 888 h = fuzzerHash(pNew->zBasis);
888 pNew->pHash = pCur->apHash[h]; 889 pNew->pHash = pCur->apHash[h];
(...skipping 286 matching lines...) Expand 10 before | Expand all | Expand 10 after
1175 char **pzErrMsg, 1176 char **pzErrMsg,
1176 const sqlite3_api_routines *pApi 1177 const sqlite3_api_routines *pApi
1177 ){ 1178 ){
1178 int rc = SQLITE_OK; 1179 int rc = SQLITE_OK;
1179 SQLITE_EXTENSION_INIT2(pApi); 1180 SQLITE_EXTENSION_INIT2(pApi);
1180 #ifndef SQLITE_OMIT_VIRTUALTABLE 1181 #ifndef SQLITE_OMIT_VIRTUALTABLE
1181 rc = sqlite3_create_module(db, "fuzzer", &fuzzerModule, 0); 1182 rc = sqlite3_create_module(db, "fuzzer", &fuzzerModule, 0);
1182 #endif 1183 #endif
1183 return rc; 1184 return rc;
1184 } 1185 }
OLDNEW
« no previous file with comments | « third_party/sqlite/src/ext/misc/eval.c ('k') | third_party/sqlite/src/ext/misc/ieee754.c » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698