BUG: Lucene.Net.Codecs.SimpleText.SimpleTextFieldsReader: Changed IndexOptions parameter to nullable, since the default value breaks the logic in the Docs() method (indistinguishable from null)
Project: http://git-wip-us.apache.org/repos/asf/lucenenet/repo Commit: http://git-wip-us.apache.org/repos/asf/lucenenet/commit/9fe7346b Tree: http://git-wip-us.apache.org/repos/asf/lucenenet/tree/9fe7346b Diff: http://git-wip-us.apache.org/repos/asf/lucenenet/diff/9fe7346b Branch: refs/heads/api-work Commit: 9fe7346bb3ccce5b87b7299717281b5f41f7fd33 Parents: 3bff810 Author: Shad Storhaug <[email protected]> Authored: Sat Mar 4 16:01:08 2017 +0700 Committer: Shad Storhaug <[email protected]> Committed: Sun Mar 5 17:08:44 2017 +0700 ---------------------------------------------------------------------- .../SimpleText/SimpleTextFieldsReader.cs | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/lucenenet/blob/9fe7346b/src/Lucene.Net.Codecs/SimpleText/SimpleTextFieldsReader.cs ---------------------------------------------------------------------- diff --git a/src/Lucene.Net.Codecs/SimpleText/SimpleTextFieldsReader.cs b/src/Lucene.Net.Codecs/SimpleText/SimpleTextFieldsReader.cs index f1bec4e..2cf5ec8 100644 --- a/src/Lucene.Net.Codecs/SimpleText/SimpleTextFieldsReader.cs +++ b/src/Lucene.Net.Codecs/SimpleText/SimpleTextFieldsReader.cs @@ -107,7 +107,7 @@ namespace Lucene.Net.Codecs.SimpleText { private readonly SimpleTextFieldsReader _outerInstance; - private readonly IndexOptions _indexOptions; + private readonly IndexOptions? _indexOptions; private int _docFreq; private long _totalTermFreq; private long _docsStart; @@ -115,7 +115,7 @@ namespace Lucene.Net.Codecs.SimpleText private readonly BytesRefFSTEnum<PairOutputs<long?, PairOutputs<long?,long?>.Pair>.Pair> _fstEnum; public SimpleTextTermsEnum(SimpleTextFieldsReader outerInstance, - FST<PairOutputs<long?, PairOutputs<long?,long?>.Pair>.Pair> fst, IndexOptions indexOptions) + FST<PairOutputs<long?, PairOutputs<long?,long?>.Pair>.Pair> fst, IndexOptions? indexOptions) { _outerInstance = outerInstance; _indexOptions = indexOptions; @@ -210,7 +210,7 @@ namespace Lucene.Net.Codecs.SimpleText public override DocsAndPositionsEnum DocsAndPositions(IBits liveDocs, DocsAndPositionsEnum reuse, int flags) { - if (_indexOptions.CompareTo(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS) < 0) + if (_indexOptions.GetValueOrDefault().CompareTo(IndexOptions.DOCS_AND_FREQS_AND_POSITIONS) < 0) { // Positions were not indexed return null; @@ -225,7 +225,7 @@ namespace Lucene.Net.Codecs.SimpleText { docsAndPositionsEnum = new SimpleTextDocsAndPositionsEnum(_outerInstance); } - return docsAndPositionsEnum.Reset(_docsStart, liveDocs, _indexOptions, _docFreq); + return docsAndPositionsEnum.Reset(_docsStart, liveDocs, _indexOptions.GetValueOrDefault(), _docFreq); } public override IComparer<BytesRef> Comparer @@ -675,8 +675,8 @@ namespace Lucene.Net.Codecs.SimpleText public override TermsEnum GetIterator(TermsEnum reuse) { - return (_fst != null && _fieldInfo.IndexOptions.HasValue) - ? new SimpleTextTermsEnum(_outerInstance, _fst, _fieldInfo.IndexOptions.Value) + return (_fst != null) + ? new SimpleTextTermsEnum(_outerInstance, _fst, _fieldInfo.IndexOptions) : TermsEnum.EMPTY; }
