| Index: third_party/sqlite/sqlite-3.7.6.3-fix-out-of-scope-memory-reference.patch
|
| diff --git a/third_party/sqlite/sqlite-3.7.6.3-fix-out-of-scope-memory-reference.patch b/third_party/sqlite/sqlite-3.7.6.3-fix-out-of-scope-memory-reference.patch
|
| new file mode 100644
|
| index 0000000000000000000000000000000000000000..a5b031b1d3ad70bfc7bd171a99dcc998d6e571af
|
| --- /dev/null
|
| +++ b/third_party/sqlite/sqlite-3.7.6.3-fix-out-of-scope-memory-reference.patch
|
| @@ -0,0 +1,26 @@
|
| +--- ext/fts3/fts3_write.c.orig 2012-05-08 21:05:03.000000000 +0300
|
| ++++ ext/fts3/fts3_write.c 2012-05-08 21:07:08.000000000 +0300
|
| +@@ -1238,13 +1238,13 @@ int sqlite3Fts3SegReaderPending(
|
| + Fts3SegReader **ppReader /* OUT: SegReader for pending-terms */
|
| + ){
|
| + Fts3SegReader *pReader = 0; /* Fts3SegReader object to return */
|
| ++ Fts3HashElem *pE; /* Iterator variable */
|
| + Fts3HashElem **aElem = 0; /* Array of term hash entries to scan */
|
| + int nElem = 0; /* Size of array at aElem */
|
| + int rc = SQLITE_OK; /* Return Code */
|
| +
|
| + if( isPrefix ){
|
| + int nAlloc = 0; /* Size of allocated array at aElem */
|
| +- Fts3HashElem *pE = 0; /* Iterator variable */
|
| +
|
| + for(pE=fts3HashFirst(&p->pendingTerms); pE; pE=fts3HashNext(pE)){
|
| + char *zKey = (char *)fts3HashKey(pE);
|
| +@@ -1276,7 +1276,7 @@ int sqlite3Fts3SegReaderPending(
|
| + }
|
| +
|
| + }else{
|
| +- Fts3HashElem *pE = fts3HashFindElem(&p->pendingTerms, zTerm, nTerm);
|
| ++ pE = fts3HashFindElem(&p->pendingTerms, zTerm, nTerm);
|
| + if( pE ){
|
| + aElem = &pE;
|
| + nElem = 1;
|
|
|