[Top][All Lists]

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

Re: Issue 1031 in lilypond: constantly-changing input/regression/rest-co

From: lilypond
Subject: Re: Issue 1031 in lilypond: constantly-changing input/regression/rest-collision-beam-note.ly
Date: Sun, 23 May 2010 06:08:45 +0000

Comment #5 on issue 1031 by pnorcks: constantly-changing input/regression/rest-collision-beam-note.ly

I've managed to reproduce the incorrect behavior (with luck) while processing multiple regtests (including rest-collision-beam-note.ly) through GDB, and I found
the location where data differs for correct and incorrect results.

The initialization of `discrete_y' in rest-collision.cc on line 275 looks like this:

    int discrete_y = dir * int (ceil (y / (0.5 * dir * staff_space)));

When correct results are produced, the value -4 is assigned to `discrete_y'.
For incorrect results, the value -8 is assigned instead.

These differing values stem from the assignment on line 233 of the same file:

    Interval restdim = rcol->extent (common, Y_AXIS);

The interval *length* is always the same, namely "1.870006", but the intervals
themselves differ:

Correct interval:   (-3.050006 . -1.18)
Incorrect interval: (-1.050006 . 0.82)

Since these intervals are the Y-extents for the NoteColumns (with rests attached),
somehow the extents are incorrectly computed.

Unfortunately, it's not easy to reproduce this bug, though I've never encountered it
while compiling *only* this regtest.

Still investigating...

reply via email to

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