Split/Join a measure with figured bass corrupts the figured bass
Nightly, January 27 c169cc2 / Windows 7
1) Open this file: Figured bass.mscz
2) Select the third note of the second measure ( E)
3) Edit -> Measure ->Split measure
4) Undo
5) Select the two measures.
6) Layout -> Add More (ou Less) Stretch
Result: crash
Note: I did not really understand the internal logic of this issue (in particular the role of Undo?) but one thing is certain: the continuous bass elements are the main point. If you delete them, the same operations in the same order works normally.
Comments
After checking, this issue appears on November 6
- This Nightly works: 5ed2bc8
- This one fails (with crash): 864ea88
There is only five commits on November 6.
So, the cause is probably here (in the same second mentionned Nightly):
- 864ea88
- or here ? : https://github.com/musescore/MuseScore/commit/3f99702e5560e2853b26a118c…
Attached the address sanitizer log.
Indeed, the undo cleanup functions of 3f99702e55 are involved.
Linux Mint 17.1, commit 399ea1daa
Thanks to cadiz1 and ABL for the investigation work!
I know how FiguredBass works (at least I should, as I implemented it), but I do not have the slightest idea what UndoCommand::cleanup() is supposed to do; so, I'm afraid I have no quick solution for this issue.
Anybody can cast some light on cleanup()?
Thanks,
M.
In fact, a shorter serie of steps (without the Layout: Increase/Decrease Stretch) gives the same result.
1) Select the third note of the second measure ( E)
2) Edit -> Measure ->Split measure
3) Undo
4)) Repeat step #2 (ie Split measure)
Result: crash
It happens also for join measure plus subsequent commands.
Example:
1- Open the file;
2- Select both measures;
3- Join measures;
4- Undo;
5- Select one figured bass and toggle its visibility -> crash.
Note that after join/split there is already corruption, since after selecting the figured bass its visibility cannot be toggled and its color cannot be changed, for example. And changing text properties causes crash.
Armed with this new information, I can say that the issue is deeper as described initially.
I confirm that on this Nightly of November 6: 5ed2bc8, with the steps reported in the first message (ie split and undo), it works.
In contrast, over the same Nightly, I get a crash by Joining the measures. Only with these steps.
1) Create a score with two measures, whose one contains bass figured elements
2) Select the two measures
3) Edit -> Measure -> Join
Result: crash (so: before using Undo)
After checking, I see that this issue (Join) is present throughout the past months. As you can see in this attachment, produced with a nigthly of May 19: 56177c3
EDIT: and I receive also a crash if I join two measures with figured bass elements, on this same Nigthly of May 19
Fixed in ed649d7ad7
Automatically closed -- issue fixed for 2 weeks with no activity.