mid bar barline spanning 2 staves doesn't stick accros save and crashes on delete

• Dec 17, 2014 - 08:59
Type
Functional
Severity
S2 - Critical
Status
closed
Project

mid bar barline spanning 2 staves doesn't stick across save and seems to cause some corruption, at least causes a crash on deleting it.

  1. new score, for piano and flute
  2. add a couple notes into piano treble clef
  3. generate parts (not shown in the below images)
  4. drag a barline from the palette to a note that it isn't the 1st of a measure
    at this point you gave a barline spanning one staff before the note you dragged it to (I've used 2 different ones, just to make sure it isn't tied to a specific type):
    barline1.png
    in Inspector you see 'span from' set to 0, 'span to' set to 8
  5. in inspector change 'spanned staves' from 1 to to 2
    at this point you have a barline spanning two staves:
    barline2.png
    in Inspector you still see 'span from' set to 0, 'span to' set to 8
  6. save, close, reopen
    at this point you have a barline spanning more than one, but less than 2 staves:
    barlingbug.png
    in Inspector you see 'span from' set to 0, but 'span to' set to -2
  7. select, delete
    CRASH
    Well, actually caused by a Q_ASSERT:
    Fatal: ASSERT: "el->prev()->next() == el" in file ...\MuseScore\libmscore\measure.cpp, line 267 (global\qglobal.cpp:2127, void qt_assert(const char*, const char*, int))

Same 'corrupt' barline, but no crash without parts

self built abbf2c8, Windows 7 (Enterprise, 64bit)


Comments

I don't understand very well the step #4. I see on the image not one barline, but two: the first (dashed) and the second (normal, highlighted). More details? Thanks.

I think the Crash happens in debug builds only, at least the corresponding Q_ASSERTs are active only then, surrounded by #ifndef NDEBUG ...#endif

Not in debug build only. I was able to reproduce last night.
This morning, I see something else (with Nightly, December 17: 4e00bo1) very probably related.

1. New score for piano
3. Fill some notes in the first measure
3. Generate parts
5. In the initial score, add a barline in the middle of the measure
1barline middle measure.jpg
6: Verify in the generated part: result: no added barline
2no added barline in part.jpg
6. Save and close
7. Restart the file
8. Select and delete the added barline
9. Undo
Result: crash
3crash on undo.jpg

EDIT: after a first check, same result with the Beta1

After further verification, I notice that the issue described with the same steps in comment #4 is very former.
As far as I can go back (May 19), I see the same thing: no added barline in the part generated, followed by a crash after Save-Reopen-Select and Delete the barline and finally Undo.

If you think this is really independent of the first, thanks to fill out a new issue.

EDIT: there is a minimal crash. Needless to save and reopen the score.

After step# 6 (verify in generated part) -> return in the initial score -> Select the added barline -> Delete -> Undo

Result: crash