Index: lucene/src/java/org/apache/lucene/analysis/tokenattributes/CharTermAttributeImpl.java =================================================================== --- lucene/src/java/org/apache/lucene/analysis/tokenattributes/CharTermAttributeImpl.java (revision 966971) +++ lucene/src/java/org/apache/lucene/analysis/tokenattributes/CharTermAttributeImpl.java (working copy) @@ -201,9 +201,10 @@ @Override public Object clone() { - CharTermAttributeImpl t = (CharTermAttributeImpl)super.clone(); - // Do a deep clone - t.termBuffer = termBuffer.clone(); + final CharTermAttributeImpl t = (CharTermAttributeImpl) super.clone(); + // deep clone of buffer with shrinking to size fit, termLength is already copied by super.clone() + t.termBuffer = new char[ArrayUtil.oversize(termLength, RamUsageEstimator.NUM_BYTES_CHAR)]; + System.arraycopy(termBuffer, 0, t.termBuffer, 0, termLength); return t; }