From 7117b68db6835acfeda17f04ab2c20a8c1ec2c17 Mon Sep 17 00:00:00 2001 From: Alan Woodward Date: Wed, 4 Apr 2018 09:37:32 +0100 Subject: [PATCH] LUCENE-8196: Check for a null input in LowpassIntervalsSource --- .../org/apache/lucene/search/intervals/IntervalFilter.java | 3 ++- .../apache/lucene/search/intervals/LowpassIntervalsSource.java | 3 +++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/lucene/sandbox/src/java/org/apache/lucene/search/intervals/IntervalFilter.java b/lucene/sandbox/src/java/org/apache/lucene/search/intervals/IntervalFilter.java index d1d2fcf9bfb..7571fc26bf7 100644 --- a/lucene/sandbox/src/java/org/apache/lucene/search/intervals/IntervalFilter.java +++ b/lucene/sandbox/src/java/org/apache/lucene/search/intervals/IntervalFilter.java @@ -18,6 +18,7 @@ package org.apache.lucene.search.intervals; import java.io.IOException; +import java.util.Objects; /** * Wraps an {@link IntervalIterator} and passes through those intervals that match the {@link #accept()} function @@ -30,7 +31,7 @@ public abstract class IntervalFilter extends IntervalIterator { * Create a new filter */ public IntervalFilter(IntervalIterator in) { - this.in = in; + this.in = Objects.requireNonNull(in); } @Override diff --git a/lucene/sandbox/src/java/org/apache/lucene/search/intervals/LowpassIntervalsSource.java b/lucene/sandbox/src/java/org/apache/lucene/search/intervals/LowpassIntervalsSource.java index 3bb469ebd79..4d7846c6f7f 100644 --- a/lucene/sandbox/src/java/org/apache/lucene/search/intervals/LowpassIntervalsSource.java +++ b/lucene/sandbox/src/java/org/apache/lucene/search/intervals/LowpassIntervalsSource.java @@ -56,6 +56,9 @@ class LowpassIntervalsSource extends IntervalsSource { @Override public IntervalIterator intervals(String field, LeafReaderContext ctx) throws IOException { IntervalIterator i = in.intervals(field, ctx); + if (i == null) { + return null; + } return new IntervalFilter(i) { @Override protected boolean accept() {