Fixed infinite skipTo and candidate list in NextSpans.
Change-Id: I92f950146c318a5a6b0b0b097121222951f4739c
diff --git a/src/main/java/de/ids_mannheim/korap/query/spans/NextSpans.java b/src/main/java/de/ids_mannheim/korap/query/spans/NextSpans.java
index fb5b254..fc915c8 100644
--- a/src/main/java/de/ids_mannheim/korap/query/spans/NextSpans.java
+++ b/src/main/java/de/ids_mannheim/korap/query/spans/NextSpans.java
@@ -178,7 +178,8 @@
if (cs.getStart() == firstSpans.end()) {
addMatch(cs);
}
- else if (cs.getEnd() < firstSpans.end()){
+ else if (cs.getEnd() < firstSpans.end()
+ && cs.getStart() <firstSpans.start()){
i.remove();
}
}
@@ -268,15 +269,16 @@
secondSpans.end(),
secondSpans.doc());
};
+
+ if (hasMoreFirstSpan){
+ setMatchList();
+ }
+ else {
+ hasMoreSpans = false;
+ candidateList.clear();
+ }
}
matchPayload.clear();
- if (hasMoreFirstSpan){
- setMatchList();
- }
- else {
- hasMoreSpans = false;
- candidateList.clear();
- }
return advance();
}