help-libidn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: infinite loop bug in libidn (pr29_4)


From: Simon Josefsson
Subject: Re: infinite loop bug in libidn (pr29_4)
Date: Sat, 07 Jan 2012 10:17:59 +0100
User-agent: Gnus/5.110018 (No Gnus v0.18) Emacs/24.0.92 (gnu/linux)

Jon Nelson <address@hidden> writes:

> On or around line 1260 of lib/pr29.c, in the pr29_4 function.
>
>   for (i = 0; i < len; i++)
>     if ((row = first_column (in[i])) > 0)
>       for (j = i + 1; j < len; j++)
>     if (combinationclass (in[j]))
>       for (k = j + 1; k < len; j++)
>         if (in_last_column_row (in[k], row))
>           return PR29_PROBLEM;
>
> The infinite loop occurs when the character is present in
> combinationclass but the following character is *not* in
> in_last_column_row.
> I believe the "k" loop should be incrementing *k* not *j*.

Thanks for the report, Jon.  Do you have any example input strings that
trigger this?  I'm sure I can work it out, but if you have them it would
speed things up.

/Simon



reply via email to

[Prev in Thread] Current Thread [Next in Thread]