Index: src/java/org/apache/lucene/index/SegmentTermEnum.java =================================================================== --- src/java/org/apache/lucene/index/SegmentTermEnum.java (revision 908159) +++ src/java/org/apache/lucene/index/SegmentTermEnum.java (working copy) @@ -108,7 +108,7 @@ return clone; } - final void seek(long pointer, int p, Term t, TermInfo ti) + final void seek(long pointer, long p, Term t, TermInfo ti) throws IOException { input.seek(pointer); position = p; Index: src/java/org/apache/lucene/index/TermInfosReader.java =================================================================== --- src/java/org/apache/lucene/index/TermInfosReader.java (revision 908159) +++ src/java/org/apache/lucene/index/TermInfosReader.java (working copy) @@ -170,7 +170,7 @@ private final void seekEnum(SegmentTermEnum enumerator, int indexOffset) throws IOException { enumerator.seek(indexPointers[indexOffset], - (indexOffset * totalIndexInterval) - 1, + ((long) indexOffset * totalIndexInterval) - 1, indexTerms[indexOffset], indexInfos[indexOffset]); }