Subsequent time signatures are shown twice when the first one is changed

• Oct 26, 2016 - 16:28
Reported version
3.0
Type
Functional
Severity
S3 - Major
Status
closed
Project

GIT commit: 8dfc84f / Windows7/10

1) Load this test file (with various time signatures added in "My First Score"):
issue time sig.mscz
2) Select the first time sig (7/4)
mesure 1.jpg
3) Double-click on another time sig in the palette eg 2/4
First result: no 2/4 time sig as expected, and initial time sig is lost
mesure 1 bis.jpg
Note, in this case, it works by drag and drop the new time signature.

BUT, it doesn't works for other changes in the score.

Whether by double-clicking or by drag and drop, the behaviour is that the new time signature doesn't replace the former one, but goes just before (by addition) the former time signature.

Like this (some problem of layout also: collision between time sig and barlines, eg with the 6/4 time sig. But not the main problem of course)
mesure2.jpg


Comments

What I observe:
Until October 24 and this nightly: fe1f451, the changing of time signature works by drag and drop. But by double-clicking, the new time signature does not appear, and cancels the former time signature.
Like this:
mesure a.jpg
After double-click
mesure b.jpg
The "new" change (addition of two time signatures) occurs with this nightly of yesterday:f7d9650
mesurec.jpg

The "initial" change (ie: by double-clicking: no new time sig and cancellation of the former time signature) occurs before in the time, apparently during the second half of September. More investigation needed.

So, the first moment that it is broken occurs in September 28.

- With this nightly all works fine (double-click, and drag and drop): 34f1cfc

- Not with this one (ie, works with drag and drop, but fails with double-click: no new time sig, and removal of the former one): 303c061

After a first checking, doesn't really know where is located this issue.

Title Regression: the changing of time signatures is broken Subsequent time signatures are shown twice when the first one is changed

Title (more explicit) updating.

Recall of steps:

1) "Untitled" score
2) Add various time signatures into the score
3) Change the default 4/4 time signature (the first one, so) by double-click, eg on 2/4

Result:
The subsequent time signatures are displayed twice (result received with current nightly 042d5b4)
twice.jpg

I've noticed that internally, there are two time signatures at every change: the real one at the start of a measure, and a "courtesy" one at the end of the previous measure. The latter doesn't display except when at the end of a line, but it is always present internally. I'm guessing either it shouldn't be there in the first place, or we aren't accounting for it correctly here. Not sure which though.

Status (old) active patch (code needs review)
Status active  

As far as I can tell, the courtesy keg signatures should indeed be there, but they are disabled. If you add notes to the score, you can see that the problem is worse than originally stated. Undo the time signature change, and the score does not revert to its previous state. I have tracked down the source of the problem, and I have submitted a patch. Please see https://github.com/musescore/MuseScore/pull/3864.