On Sat, Mar 19, 2011 at 7:03 PM,
<address@hidden> wrote:
LGTM.
I can't think of a case where updating `after' would cause problems -
this seems like a good solution.
It might cause problems if "pure" is true. When the method is called with "pure," it shouldn't cause any side effects. For a concrete example, this will mess up if you have
Staff
Lyrics with affinity down
Staff that sometimes disappears
Lyrics with affinity up
Staff
because the staff that sometimes disappears will trigger the warning _before_ line breaking (with "pure" set to true). This can be fixed by adding
if (!pure)
{
warning (...);
after_affinity = before_affinity;
}
because there isn't really a need to print out the warning every time the pure version is called.
Cheers,
Joe