|
a/src/query/docseqdb.cpp |
|
b/src/query/docseqdb.cpp |
|
... |
|
... |
159 |
if (fs.isNotNull()) {
|
159 |
if (fs.isNotNull()) {
|
160 |
// We build a search spec by adding a filtering layer to the base one.
|
160 |
// We build a search spec by adding a filtering layer to the base one.
|
161 |
m_fsdata = RefCntr<Rcl::SearchData>(
|
161 |
m_fsdata = RefCntr<Rcl::SearchData>(
|
162 |
new Rcl::SearchData(Rcl::SCLT_AND, m_sdata->getStemLang()));
|
162 |
new Rcl::SearchData(Rcl::SCLT_AND, m_sdata->getStemLang()));
|
163 |
Rcl::SearchDataClauseSub *cl =
|
163 |
Rcl::SearchDataClauseSub *cl =
|
164 |
new Rcl::SearchDataClauseSub(Rcl::SCLT_SUB, m_sdata);
|
164 |
new Rcl::SearchDataClauseSub(m_sdata);
|
165 |
m_fsdata->addClause(cl);
|
165 |
m_fsdata->addClause(cl);
|
166 |
|
166 |
|
167 |
for (unsigned int i = 0; i < fs.crits.size(); i++) {
|
167 |
for (unsigned int i = 0; i < fs.crits.size(); i++) {
|
168 |
switch (fs.crits[i]) {
|
168 |
switch (fs.crits[i]) {
|
169 |
case DocSeqFiltSpec::DSFS_MIMETYPE:
|
169 |
case DocSeqFiltSpec::DSFS_MIMETYPE:
|
|
... |
|
... |
179 |
wasaStringToRcl(m_q->whatDb()->getConf(),
|
179 |
wasaStringToRcl(m_q->whatDb()->getConf(),
|
180 |
m_sdata->getStemLang(),
|
180 |
m_sdata->getStemLang(),
|
181 |
fs.values[i], reason);
|
181 |
fs.values[i], reason);
|
182 |
if (sd) {
|
182 |
if (sd) {
|
183 |
Rcl::SearchDataClauseSub *cl1 =
|
183 |
Rcl::SearchDataClauseSub *cl1 =
|
184 |
new Rcl::SearchDataClauseSub(Rcl::SCLT_SUB,
|
184 |
new Rcl::SearchDataClauseSub(
|
185 |
RefCntr<Rcl::SearchData>(sd));
|
185 |
RefCntr<Rcl::SearchData>(sd));
|
186 |
m_fsdata->addClause(cl1);
|
186 |
m_fsdata->addClause(cl1);
|
187 |
}
|
187 |
}
|
188 |
}
|
188 |
}
|
189 |
break;
|
189 |
break;
|
190 |
default:
|
190 |
default:
|