lilypond-devel
[Top][All Lists]
Advanced

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

Re: Assertion failure on current master


From: address@hidden
Subject: Re: Assertion failure on current master
Date: Sat, 1 Oct 2011 20:16:13 +0200

On Oct 1, 2011, at 7:48 PM, David Kastrup wrote:

> "address@hidden" <address@hidden> writes:
> 
>> On Oct 1, 2011, at 7:22 PM, Neil Puttock wrote:
>> 
>>> On 1 October 2011 18:19, Peekay Ex <address@hidden> wrote:
>>> 
>>>> Neil what command do you run when you do a test-baseline so that I
>>>> might get something like you do?
>>> 
>>> I don't. :)  I couldn't work out which file was failing, so I did what
>>> I usually do: run all the regression tests until it crashes.
>>> 
>>> The output I've posted is from debugging mozart-hrn-3.ly on its own via GDB.
>>> 
>>> Cheers,
>>> Neil
>>> 
>> 
>> Could someone replace the last line of Tuplet_number::calc_y_offset with:
>> 
>> return scm_from_double (positions.is_empty () ? 0.0 : positions.center ());
>> 
>> And let me know if this gets rid of the problem?
> 
> If it does, this is a test and not the actual cure, right?
> 

No.
But I just pushed the actual cure.

The problem was that positions stores two Y positions - a left and a right.  If 
the left is higher than right, than the interval is read as empty.  So, the 
center needs to be calculated manually.

Interval is not really the right thing to use for positions if one wants to use 
the instance methods of interval (like is_empty), but I use it because it is 
already used in tuplet-bracket.cc for the print function (in a way that doesn't 
risk an assertion error).  It could also be put in a real drul array, but there 
is currently no robust_scm2realdrul.  This would definitely be a welcome 
addition to avoid confusion in the code base.

Cheers,
MS




reply via email to

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