Changeset 1848


Ignore:
Timestamp:
2001-01-22T14:50:19+13:00 (23 years ago)
Author:
kjm18
Message:

checks added for failure of IndexData.loadLevel()

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/gsdl/src/mgpp/text/MGQuery.cpp

    r1836 r1848  
    4848}
    4949
    50 
     50 
    5151
    5252QueryNode::QueryNode () {
     
    624624
    625625  // make sure level is current
    626   indexData.LoadLevel (queryInfo.docLevel);
    627  
     626  if (!indexData.LoadLevel (queryInfo.docLevel)) {
     627    return;
     628  }
    628629  // do query
    629   if (queryTree != NULL)
    630     (*queryTree).Calculate (indexData, queryInfo, result);
     630  if (queryTree == NULL) return;
     631 
     632  (*queryTree).Calculate (indexData, queryInfo, result);
    631633
    632634  // make weights into ranks if needed
     
    638640    }
    639641  }
    640 
     642 
    641643  unsigned long resultsSize = queryInfo.maxDocs;
    642644  if (resultsSize == 0 || resultsSize > result.docs.size())
     
    700702// in QueryResult.docs and if a second level is specified,
    701703// it will return corresponding docnums for that level in QueryResult.levels
     704// If there is no level specified, or that level is invalid, the query
     705// level is used
    702706void MGQuery (IndexData &indexData,
    703707          const QueryInfo &queryInfo,
     
    729733
    730734  // the new level info
    731   indexData.LoadLevel(level);
     735  if (!indexData.LoadLevel(level)) {
     736    realresult.levels = result.docs;
     737    return;
     738  }
    732739 
    733740  unsigned long DocNum = 0;
Note: See TracChangeset for help on using the changeset viewer.