[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: `scm_c_read ()' and `swap_buffer' trick harmful
From: |
Ludovic Courtès |
Subject: |
Re: `scm_c_read ()' and `swap_buffer' trick harmful |
Date: |
Fri, 19 Dec 2008 21:25:27 +0100 |
User-agent: |
Gnus/5.11 (Gnus v5.11) Emacs/22.3 (gnu/linux) |
Hello,
Miroslav Lichvar <address@hidden> writes:
> On Sun, Nov 23, 2008 at 10:30:19PM +0000, Neil Jerram wrote:
>> 2008/11/21 Ludovic Courtès <address@hidden>:
>> > I confirm it works with CBIPs in Guile-R6RS-Libs, but I had to make this
>> > small change:
>> >
>> >
>> > http://repo.or.cz/w/guile-r6rs-libs.git?a=commitdiff;h=dfab2fe21f82bc40cfdf9a3a3eeb6936d5935c8c
>> >
>> > IOW, with Guile up to 1.8.5, it was harmless to leave `read_buf_size'
>> > uninitialized (actually, zeroed), which was OK since CBIPs don't use it,
>> > but the change in `scm_c_read ()' makes it necessary to initialize it.
>> > It's probably a reasonable expectation, though.
>>
>> Hmm. I agree that this isn't ideal. I guess it's OK for now though.
>>
>> > Please commit!
>>
>> Thanks, doing that now.
>
> It seems that the optimizations broke lilypond, it's now failing with
> this message:
>
> ports.c:978: scm_fill_input: Assertion `pt->read_pos == pt->read_end' failed.
Ouch!
> A bug report is here:
> https://bugzilla.redhat.com/show_bug.cgi?id=477007
Can you get a full C backtrace?
A quick grep reveals that Lilypond does not create any custom port type,
which isn't reassuring...
Thanks,
Ludo'.