Glissando Reverts between closing and reopening file

Reported version
3.5
Type
Functional
Frequency
Few
Severity
S3 - Major
Reproducibility
Always
Status
closed
Regression
Yes
Workaround
No
Project

Steps:
1. Apply a glissando properly
2. Change its text in the inspector
3. Save
4. Close file
5. Reopen file
Expected: modified text remains
Actual: displays default text


Comments

Severity S4 - Minor S3 - Major

Confirmed, still the case in current builds. It seems the text does get written to the file but somehow this fact doesn't get noticed on open.

The issue appears connected to the code designed to deal with the changes to style defaults. We're reading the text fine by then it's getting reset to the style default later because we haven't marked the property as unstyled. I think the fix will involve making sure we mark it unstyled when reading it, but I'm wanting to be sure I understand how this ever worked before. Even without the new style code, if the property is not marked unstyled on read, it should have failed to survive a second save.

OK, kind of funny - while in 3.5.2 it does survive a second save, that's because we always write the text. But, it doesn't survive any other operation that triggers a style update. Like, after loading the score with the custom gliss into 3.5.2, try changing the title text style, or any other style setting at all. This will cause the custom gliss text to revert. And I see I had analyzed this and provided a potential solution some time ago - see https://musescore.org/en/node/305093#comment-997917

So, although the symptom is different and new, the underlying cause is actually the same as #305093: Setting lyrics style changes glissando text. Will produce fix shortly, sorry I never did before!

Status PR created fixed

Fixed in branch 3.x, commit e4861a77ed

_fix #316096, fix #305093: custom gliss text reverts to default "gliss"

Resolves: https://musescore.org/en/node/316096
Resolves: https://musescore.org/en/node/305093

Issue is that customized gliss text reverts back to the default "gliss".
In all 3.x versions, this happened after saving, reloading,
then making any style change.
In 3.6, this happens immediately on the save/reload.
Cause is that the property was never makred unstyled on read.
Fix is to change the plain setting of "text" with
a call to readProperty() on Pid::GLISS_TEXT.

Fix version
3.6.2