Melisma lines saved in 3.1 do not appear when opened in 3.0

• Apr 20, 2019 - 18:11
Reported version
3.0
Priority
P0 - Critical
Type
Functional
Frequency
Once
Severity
S2 - Critical
Reproducibility
Always
Status
closed
Regression
Yes
Workaround
No
Project

(Priority assumes we want 3.1 scores to open correctly in 3.0 where possible)

In master:

1) enter four quarter notes
2) enter lyrics "A _ _ B"
3) save
4) open in 3.0.5

Result: melisma line is gone. That's because we saved the "ticks" values as a fraction instead of converting to integer ticks.


Comments

Maybe we can also use two tags, <ticks> for integer ticks and <ticks_f> for fractions. Then both compatibility with older versions and precision of fractions will be achieved.

That's the approach I would recommend too. Probably best to change the handling of P_TYPE:FRACTION globally, in writeProperty() & readProperty(), but I'm not so adept with the xml read code.

Status active PR created

Unfortunately P_TYPE::FRACTION is used not only for ticks but also for time signatures so changing its handling globally may not work correctly. Still, it looks like lyrics is the only place where we write exactly ticks to a file, so changing reading/writing procedure just for this case should work well.
See https://github.com/musescore/MuseScore/pull/4967 for the patch.

Fix version
3.1.0