Andreas Schwab <[EMAIL PROTECTED]> wrote:
> Jim Meyering <[EMAIL PROTECTED]> writes:
>> Andreas Schwab <[EMAIL PROTECTED]> wrote:
>>> 2007-07-23  Andreas Schwab  <[EMAIL PROTECTED]>
>>>
>>>     * src/sort.c (fillbuf): Make sure the buffer limit is always
>>>     aligned after the buffer was grown.
>>>
>>> diff --git a/src/sort.c b/src/sort.c
>>> index 824dd0d..6024be7 100644
>>> --- a/src/sort.c
>>> +++ b/src/sort.c
>>> @@ -1492,6 +1492,8 @@ fillbuf (struct buffer *buf, FILE *fp, char const 
>>> *file)
>>>        /* The current input line is too long to fit in the buffer.
>>>      Double the buffer size and try again.  */
>>>        buf->buf = X2REALLOC (buf->buf, &buf->alloc);
>>> +      /* Realign buffer limit.  */
>>> +      buf->alloc -= buf->alloc % sizeof (struct line);
>>>      }
>>>  }
>>
>> Thanks!
>> Can you provide a test case to exercise that code?
>
> Obviously you need a file with a long line.

Thanks, but I knew that :-)
I even tried something simple, like this

  perl -e 'print "a"x99383420' |./sort > /dev/null

but that didn't trigger it.
I spent a couple more minutes and triggered the code with this:

  perl -e 'print "a"x1015' |./sort -S 1 > /dev/null

Can you make the unpatched sort misbehave?

I.e., how did you discover the bug?


_______________________________________________
Bug-coreutils mailing list
[email protected]
http://lists.gnu.org/mailman/listinfo/bug-coreutils

Reply via email to