SQLite

Check-in [eee0250249]
Login

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Fix memory leak reported by an fts1 user. Was losing a doclist on a query error. (CVS 4347)
Downloads: Tarball | ZIP archive
Timelines: family | ancestors | descendants | both | trunk
Files: files | file ages | folders
SHA1: eee025024972852990e704253d1443c1cefb376c
User & Date: shess 2007-08-30 19:56:38.000
Context
2007-08-30
20:01
Fix discrepency in the test pointed out by a user. Was testing fts2 :-). (CVS 4348) (check-in: 65c62ed85e user: shess tags: trunk)
19:56
Fix memory leak reported by an fts1 user. Was losing a doclist on a query error. (CVS 4347) (check-in: eee0250249 user: shess tags: trunk)
17:15
Make mutex functions available to loadable extensions. Fix the amalgamation generator to include the latest source files. (CVS 4346) (check-in: 293a3f837b user: drh tags: trunk)
Changes
Unified Diff Show Whitespace Changes Patch
Changes to ext/fts1/fts1.c.
2569
2570
2571
2572
2573
2574
2575
2576



2577
2578
2579
2580
2581
2582
2583
  DocList **ppResult    /* Write the result here */
){
  DocList *pLeft, *pRight, *pNew;
  int i, rc;

  pLeft = docListNew(DL_POSITIONS);
  rc = term_select_all(v, iColumn, pQTerm->pTerm, pQTerm->nTerm, pLeft);
  if( rc ) return rc;



  for(i=1; i<=pQTerm->nPhrase; i++){
    pRight = docListNew(DL_POSITIONS);
    rc = term_select_all(v, iColumn, pQTerm[i].pTerm, pQTerm[i].nTerm, pRight);
    if( rc ){
      docListDelete(pLeft);
      return rc;
    }







|
>
>
>







2569
2570
2571
2572
2573
2574
2575
2576
2577
2578
2579
2580
2581
2582
2583
2584
2585
2586
  DocList **ppResult    /* Write the result here */
){
  DocList *pLeft, *pRight, *pNew;
  int i, rc;

  pLeft = docListNew(DL_POSITIONS);
  rc = term_select_all(v, iColumn, pQTerm->pTerm, pQTerm->nTerm, pLeft);
  if( rc ){
    docListDelete(pLeft);
    return rc;
  }
  for(i=1; i<=pQTerm->nPhrase; i++){
    pRight = docListNew(DL_POSITIONS);
    rc = term_select_all(v, iColumn, pQTerm[i].pTerm, pQTerm[i].nTerm, pRight);
    if( rc ){
      docListDelete(pLeft);
      return rc;
    }