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

Türkay Kaynak edited comment on LUCENENET-544 at 8/15/15 9:22 PM:
------------------------------------------------------------------

And location...

SnowballProgram.cs

{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}


was (Author: arionwm):
{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)

Reply via email to