--- a/searchengine/oss/cl/clucene/src/clucene/search/wildcardtermenum.cpp Mon May 03 13:33:22 2010 +0300
+++ b/searchengine/oss/cl/clucene/src/clucene/search/wildcardtermenum.cpp Fri May 14 16:57:37 2010 +0300
@@ -29,8 +29,8 @@
fieldMatch(false),
_endEnum(false)
{
-
- pre = stringDuplicate(term->text());
+ if ( term )
+ pre = stringDuplicate(term->text());
const TCHAR* sidx = _tcschr( pre, LUCENE_WILDCARDTERMENUM_WILDCARD_STRING );
const TCHAR* cidx = _tcschr( pre, LUCENE_WILDCARDTERMENUM_WILDCARD_CHAR );
@@ -42,7 +42,8 @@
CND_PRECONDITION(tidx != NULL, "tidx==NULL");
int32_t idx = (int32_t)(tidx - pre);
preLen = idx;
- CND_PRECONDITION(preLen<term->textLength(), "preLen >= term->textLength()");
+ if ( term )
+ CND_PRECONDITION(preLen<term->textLength(), "preLen >= term->textLength()");
pre[preLen]=0; //trim end
Term* t = _CLNEW Term(__term, pre);