Crash on score load - hairpin with no endspanner

• Jul 18, 2014 - 19:06
Type
Functional
Severity
S4 - Minor
Status
closed
Project

MS Nightly 5158978 segfaults trying to load a score it just saved. Score is uploaded at https://drive.google.com/file/d/0B3iW4UPoBO3vN2hraUVmM3pLT0k/ . I have a patch, but someone more knowledgeable than me should probably look and see if it's all OK! PR is at https://github.com/musescore/MuseScore/pull/1046 .

Jarrad


Comments

I think there is more to the story than this. The crash seems to be a result of a hairpin with no end element or tick2, and your code here does allow that to at least load - probably not a bad idea to add this or something like it to protect against this case. But it begs the question, *why* is there a hairpin with no end element or tick2? It appears that hairpin id 255 (found in bar 116 of the Bones and Bari part) in the posted score has no corresponding endspanner. I think even with your fix in place, you'll find hairpins missing in bar 116 both in the score and in the part.

I remember we were having trouble with this a while back, see #23396: Hairpins become corrupt (no end spanner / tick2 == -1), leading to crash and #25481: adding a crescendo corrupts the file. I guess this means there are still cases out there where we can generate hairpins with no endspanner. Still would be be nice to figure out how to reproduce this.

Ok, I am in great admiration if your sleuthing efforts now. :) I can be reasonably sure that those hairpins were all created in the full score, by selecting a passage and pressing <. However, there were some old hairpins in that location that only showed up after I changed font to Bravura. I deleted those. They would have been created in 1.3.

Since there is no endSpanner tag in the file for this hairpin, I doubt tick2 would ever have been set. I'm betting on "not in the spanner map yet". Like maybe it isn't added until you find the endSpanner? Just guessing.

Re #5:
I don't think so, I played with MS git at the start of the year, decided it wasn't stable enough to do a big project in, so did all composition in MS 1.3. Last week, with composition finished, I imported it into MS git head to take advantage of the better layout and dynamic parts features for publishing. I don't think MS pre mid-July has ever touched this score.