[ 
https://issues.apache.org/jira/browse/LUCENE-5237?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13774428#comment-13774428
 ] 

Robert Muir commented on LUCENE-5237:
-------------------------------------

{quote}
Shouldn't it throw an exception instead when pos + nChars > buf.length?
{quote}

assertion would also be ok I think: the code using this should be passing in 
length coming from the term buffer and should "know what its doing", e.g. this 
isn't a String class.

either way: I'd rather have some warning that the stemmer is "broken" / has 
some wierdness than for delete(N) to silently not remove a suffix, thats scary 
to me to just change!

                
> StemmerUtil.deleteN may delete too many characters
> --------------------------------------------------
>
>                 Key: LUCENE-5237
>                 URL: https://issues.apache.org/jira/browse/LUCENE-5237
>             Project: Lucene - Core
>          Issue Type: Bug
>          Components: modules/analysis
>            Reporter: Shai Erera
>            Assignee: Shai Erera
>         Attachments: LUCENE-5237.patch
>
>
> StemmerUtil.deleteN calls to delete(), but in some cases, it may delete too 
> many characters. E.g. if you execute this code:
> {code}
> char[] buf = "abcd".toCharArray();
> int len = StemmerUtil.deleteN(buf, buf.length, buf.length, 3);
> System.out.println(new String(buf, 0, len));
> {code}
> You get "a", even though no character should have been deleted (not according 
> to the javadocs nor common logic).
> The problem is in delete(), which always returns {{len-1}}, even if no 
> character is actually deleted.
> I'll post a patch that fixes it shortly.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to