Crash on accessibleExtraInfo in 1.3 score (with bad spannerMap?)

• Aug 19, 2014 - 03:22
Type
Functional
Severity
S2 - Critical
Status
closed
Project

Ubuntu Studio 14.04, GIT commit: 7cd411a

1) load attached score
2) click first note of first staff

Result: crash

The crash occurs here:

https://github.com/musescore/MuseScore/blob/7cd411a83ef173b8b13d4590f37…

If I'm not mistaken, this is actually creating an empty spanner map and copying the score spanner map into it. Probably safe if the map is good, but it's crashing something inside this line, so perhaps that is a sign of trouble with the spanner map?

So, I guess we need to find out what if anything is wrong with the spanner map and why, and also see if accessibleExtraInfo can be improved to be less sensitive to this.

Andrei: I may be help with the second part of this. I tried eliminating the variable "smap" and simply inserting score()->spannerMap() directly in the next line where "smap" is used. No more crash, and as far as I can tell everything still works. I see you do the same thing a half dozen other places, hopefully the same fix will work there too.

Attachment Size
Pictures_at_an_Exhibition.mscz 20.6 KB

Comments

It does not crash if you use a reference to the spanner map instead of copying (SpannerMap& smap = ... instread of SpannerMape smap = ...).

It would be even better to use a const reference which in the end requires accessibleExtraInfo() be a const method.

Also it would be better if ChordRest() did not need to know anything about spanner maps, e.g. moving this out of ChordRest.

In the end i have no idea why copying the spanner map does not work.