Split/Join a measure with figured bass corrupts the figured bass

• Jan 27, 2015 - 22:05
Type
Functional
Severity
S2 - Critical
Status
closed
Project

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
Split.jpg

4) Undo

5) Select the two measures.

Select.jpg

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

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

Title Splitting a measure with figured bass, undo, and adding stretch causes a crash Split/Join a measure with figured bass corrupts the figured bass

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
join measures May 19.jpg

EDIT: and I receive also a crash if I join two measures with figured bass elements, on this same Nigthly of May 19
crash join 2 measures.jpg