Crash when copying notes with accidentals on TAB (Regression)

• Jun 6, 2014 - 21:29
S2 - Critical

To reproduce: Create a project without any titles that contains a normal staff and a bass tab underneath.

Draw notes (C D E F G A B C) and go to A and make it flat (bA)

Select the range you created and copy it. Try to paste it to the tab. It should crash.

If the Ab is not, well, flat, it works fine

I attach two pictures that display the two cases.

Hope this helps as the program is effing AWESOME!


Attachment Size
2014-06-06_23h24_19.png 49.15 KB
2014-06-06_23h25_37.png 61.41 KB


Preliminary answer:

A quick test with a version installed on another computer did show that it was working with a version about one month old.

Since there have not been significant changes in TAB management since then and the crash is generated while setting the selection in the Inspector, it has to do with recent changes either in the selection management or in the Inspector code.

In fact, a visible difference between the two versions is that, prior to copy, in the old, working version, the accidental was not selected, while in the current, non-working version, the accidental is selected.

Any hint about specific areas to look for could spare a lot of bug hunting time!




This bug of copy-pasted from an existing standard staff to an added Tab staff, reported here in this topic, is a reality. I found it on some files (but I had not yet identified the cause of the crash).

Tests on a recent Nightly, June 9 ("ea51a17")

- First example: measures 1 and 2: ok; measures 4/5 and 7/8: crash
accidental and tab.mscz

- Second example: in this score, there is a single accidental alteration (C #, measure 7). Try copying and pasting the entire piece. Result: crash
Ejercicio n°6, Ferrer y Esteve, stand et tab.mscz

Try now, with simply remove this C #. Result: OK - :)

Title Crash when copying notes with accidentals on TAB Crash when copying notes with accidentals on TAB (Regression)

@cadiz1: of course this bug is a reality, I was not doubting it. I was trying to understand WHEN it begun in order to understand WHY and possibly WHERE in the code.

If fact, I have now understood that this bug is related with recent changes in selection management: now range selection also includes accidentals. This is correct in itself, but probably unveiled a lurking bug: after the paste, the pasting code updates the status of the selection before the re-layout and re-format process is completed; when pasting to a TAB, this process involves deleting the accidentals (which cannot appear in a TAB) and leaves the selection with inconsistent contents.

A patch is on the way...