[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: prevent collision of ligatures and next note (issue 6740046)
From: |
benko . pal |
Subject: |
Re: prevent collision of ligatures and next note (issue 6740046) |
Date: |
Tue, 23 Oct 2012 18:56:52 +0000 |
hi Janek,
Pal, could you add some comments and a more descriptive commit
message? I see
the code, and it seems to make sense, but i don't understand the
"why's". For
example, why the parameters should be passed in a different way?
in C++ there should be a good reason to pass complex structures like
std::vector<Grob_info> by value, not by reference to const; in this case
there's no such reason, pass-by-reference works perfectly.
I also think that it'd be a good idea to add a regtest, even if it's
imperfect
(just write a comment inside it, so that everyone envestigating it
will be
warned that some unexpected results may occur).
the problem is that I really can't predict _when_ unexpected results can
and when can't occur. I tried to come up with the Tiniest example and
I'm sure my example in the attachment to
http://code.google.com/p/lilypond/issues/detail?id=2914
is not the tiniest possible that demonstrates the problem. put
otherwise, working all right with previous versions is just as
unexpected for me as producing a collision.
http://codereview.appspot.com/6740046/diff/1/lily/mensural-ligature-engraver.cc
File lily/mensural-ligature-engraver.cc (right):
http://codereview.appspot.com/6740046/diff/1/lily/mensural-ligature-engraver.cc#newcode428
lily/mensural-ligature-engraver.cc:428: if (size_t const dot_count =
Rhythmic_head::dot_count (current))
Is this related to the ligature collision problem or just a by-the-way
fix?
it _was_ related (see usage of dot_count lower); I hope the new
organization is cleaner.
p
http://codereview.appspot.com/6740046/