Full measure rest created in next measure if changing length of chordrest in voice 2,3,4 creates rest at end of measure

• Aug 3, 2014 - 18:57
Reported version
2.1
Type
Functional
Severity
S4 - Minor
Status
active
Project

Ubuntu Studio 14.04, GIT commit: cf1da9f

1) new score, flute,. 4/4, 32 measures
2) measure 1, note entry, voice 2
3) 4 G Esc
4) select and delete the eighth
5) click the G
6) 5

Result: the G turns into a quarter note, which should have taken up the space left by the "hole" leaving everything else intact, but instead the remaining rests are shifted around and a rest is created in the next measure. The score looks corrupt, although the rest in the next measure can be deleted and as far as I can tell you are no worse off than you were before (you still have a hole in your measure).


Comments

Actually, the hole has nothing to do with it.

Repeat the same steps exactly but without step 4. Increasing the length of a note in voice 2 always creates a measure rest in the next measure, and it appears corrupt in that the rest is not laid out correctly. That seems to be because the layout code isn't expect measure rests in multiple voices. The layout issue might be something I broke with a recent change involving measure rests in multiple voices, but this case shouldn't be happening in the first place.

The apparent corruption was fixed a while ago. The steps listed above still create a full measure rest in voice 2, but at least it gets centered now and no longer looks corrupt. And you can select & delete it normally. Still, I think we shouldn't be interfering with measure 2 at all.

Title Apparent corruption upon changing length of note or rest in voice 2 Full measure rest created in next measure upon changing length of note or rest in voice 2

It was never truly corrupt - just looked that way because of the bad layout.

To me, this is minor because the situation that leads to this isn't all that common and it is simple to just delete the rest, but if you feel like raising the priority, go for it.

Title Full measure rest created in next measure upon changing length of note or rest in voice 2 Full measure rest created in next measure if changing length of chordrest in voice 2,3,4 creates rest at end of measure

Noting that happens with all voices (except voice 1, of course). Note that with voice 3, the rest in the next measure will appear *underneath* the regular measure rest, so you won't see it, but it is still there according to the debugger. (Credit to mike320 for discovering this )

I'm also noting that the rest in the next measure is only created if and only if changing the duration of a chordrest will cause the creation of a rest at the end of the measure. (Credit to mike320 for discovering this )

I observe this behavior on both 2.0.3, latest 2.1-dev 3543170, and latest 3.0-dev ee309b5.