[MusicXML import (pull parser)] abort when reading FOR THE FALLEN.xml
When reading the file attached to issue 64236 (FOR THE FALLEN.xml) using the pull parser, MuseScore aborts on a failed assertion. Console output ends with:
Error at line 1585 col 10: calculated duration invalid, using specified duration (1/1)
ASSERT: "_e.isEndElement() && _e.name() == "notations"" in file /Users/lvi/dev/MuseScore/mscore/importmxmlpass2.cpp, line 5564
Abort trap: 6
Note that this seems unrelated to pr #2060.
Comments
Does not reproduce on todays trunk.
Edit: above comment is incorrect, accidentally tested with DOM parser. Issue still reproduces.
Cause found: notations / articulations / breath-mark is parsed incorrectly (a.o. lines 1872 and 12508).
Cause found: parser assumes breath-mark elements are always empty, which is not true. Easy to fix.
Pull request #2076
Fixed in branch master, commit 1c678789b1
fix #64946
Fixed in branch 2.0.2, commit 586b7808fc
fix #64946
Automatically closed -- issue fixed for 2 weeks with no activity.