You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucenenet.apache.org by "Türkay Kaynak (JIRA)" <ji...@apache.org> on 2015/08/15 23:21:45 UTC
[jira] [Commented] (LUCENENET-544) Turkish stemmer causes an
IndexOutOfRange
[ https://issues.apache.org/jira/browse/LUCENENET-544?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14698460#comment-14698460 ]
Türkay Kaynak commented on LUCENENET-544:
-----------------------------------------
{code}
protected internal virtual int replace_s(int c_bra, int c_ket, System.String s)
{
int adjustment = s.Length - (c_ket - c_bra);
if (current.Length > bra)
//<--!! 'bra' is '0'. Caller(s): TurkishStemmer.r_postlude() -> TurkishStemmer.r_append_U_to_stems_ending_with_d_or_g() -> insert() -> replace_s()
current.Replace(current.ToString(bra, ket - bra), s, bra, ket - bra);
else
current.Append(s);
limit += adjustment;
if (cursor >= c_ket)
cursor += adjustment;
else if (cursor > c_bra)
cursor = c_bra;
return adjustment;
}
{code}
> Turkish stemmer causes an IndexOutOfRange
> -----------------------------------------
>
> Key: LUCENENET-544
> URL: https://issues.apache.org/jira/browse/LUCENENET-544
> Project: Lucene.Net
> Issue Type: Bug
> Components: Lucene.Net Contrib
> Environment: Windows 7 x64, .NET 4.0
> Reporter: Peter Wright
> Attachments: Program.cs, Turkish.txt, Turkish3.txt, Visual Studio with exception details.png
>
>
> Certain words in the Turkish stemmer is causing SnowballProgram to throw an index out of range exception in the method "find_among_b(Among[] v, int v_size)".
> Line 353
> diff = current[c - 1 - common] - w.s[i2];
> current[c - 1 - common] 'current[c - 1 - common]' threw an exception of type 'System.IndexOutOfRangeException' char {System.IndexOutOfRangeException}
> - current {ı} System.Text.StringBuilder
> Length 1 int
> c 8 int
> common 0 int
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)