Crash on xml input

• Dec 31, 2009 - 04:20
Type
Functional
Severity
S4 - Minor
Status
closed
Project

MuseScore 0.9.5 reliably crashes when I try to import the attached MusicXML file. (The file may have an error of some kind but if so I hope that MuseScore can handle it more gracefully.)

This is on MacOS X 10.6.2

I have attached the MusicXML file and a crash log.

Attachment Size
Gatti.xml 158.63 KB
mscore_2009-12-30-201549_rowen.crash_.txt 40.88 KB

Comments

Find attached the MusicXML file generated with Dolet for Sibelius. Sibelius did import the file without issues apparently. So more investigation is needed to find out what causes the crash.

Attachment Size
Gatti.xml 297.46 KB

The musicXML file contains 5 parts. For each parts the notes are on 1 voice.
Voices are labeled 1, 2, 3 etc... In sibelius and finale voice count is reset to 0 at every part. MuseScore expects this behavior.

I agree that MuseScore should not crash but as I said before, I wonder if MuseScore should open this type of files, or just reject them with a clear explanation.

Lasconic's observation is correct, in some places the MusicXML import code assumes voice numbers are between 1 and 4. File Gatti.xml is valid MusicXML, but does not comply with this assumption, causing an array overflow.

MuseScore should be able to import this file without problems. I will fix it shortly.

Regards, Leon.

Even if it's a valid MusicXML, I still think it's always better to have some good practises and unfortunatly there is no way to express these "rules" in a DTD or a Schema.

Sibelius, Finale and MuseScore follows the rules of resetting voice numbering at every part. Harmony does not.
I file a bug report in their forum