Change of duration of measures including grace notes (acciaccatura) causes a crash in tab staff, linked or single.

• Jan 18, 2015 - 12:59
Type
Functional
Severity
S2 - Critical
Status
closed
Project

Nightly, Junuary 18: 2e2aa1c/ Windows7

1) Choose the guitar + tablature Template, or open this file: Linked staves grace notes.mscz

2) Enter a quarter note -> add a grace note (acciaccatura) one time -> repeat a second time. So: acciaccatura with two stems.

3) Select the measure ->Measure Properties -> Change Actual value eg 4/4 -> 3/4 -> Ok

Result: crash immediatly or after Undo. Ditto with single Tab (I think that is the main point here)
There is many variations according to staff type.

So, for testing, the more simply is attaching the following files.
- Full.mscz
- Common.mscz
- Simple.mscz

This issue appears on July 30 .

- This Nightly is correct: e7e9d9f

1linked first step on e7e9d9f.jpg
After change 4/4 to 3/4 in Measure properties

2linked second step on e7e9d9f.jpg

With single Tab

3tab on e7e9d9f.jpg
4 result measure properties.jpg

- This one fails (after undo): a8f472c

5 crash linked after undo.jpg
6 crash tab measure properties undo.jpg

- After checking various commits in this "window", I cannot clearly identify where is the problem (no mention of grace notes or/and TimeSig or other...) I think that is the first time that I am in the fog in such circumstances...! ;-)

Finally, note two points:

- Apparently, only the accacciatura (with two stems, and more) seems affected. Maybe the "original" issue is the diagonal line in the stem/tail ? (next image seen in a Nigthly two days earlier with linked staves and after deletion of the standard staff). But, as mentionned above, the file "Simple" works.
So... bumping head! :(
diagonal line July 28.jpg

- In my tests, I have seeing many times an issue (related or not, I don't know... but I would dare a "likely"?) after the deletion of the standard staff (in the scenario: standard staff + linked tab staff). In this case, I noticed a true instability (or crash) of the remaining tab staff after selection or new change in Measure Properties, including with the mentionned Nightly on July 30.

EDIT: well, with the same Nightly : 2e2aa1c, I received a crash with the "Simple" file on my laptop (Windows8), and as already said, it works on an other computer (Windows7). So, I wish to take some distance with this issue some time ...! :)


Comments

Confirmed, stack trace:

0 ?? 0x4d207962
1 Ms::Inspector::setElements inspector.cpp 137 0x58b114
2 Ms::MuseScore::updateInspector musescore.cpp 1155 0x46bc2b
3 Ms::MuseScore::selectionChanged musescore.cpp 1138 0x46bb57
4 Ms::MuseScore::endCmd musescore.cpp 3845 0x47b8e7
5 Ms::ScoreView::measurePopup scoreview.cpp 1189 0x41f3c8
6 Ms::ScoreView::contextPopup scoreview.cpp 3242 0x42ad3f
7 Ms::ContextTransition::onTransition scoreview.cpp 189 0xa99977
8 ZN20QStateMachinePrivate24executeTransitionContentEP6QEventRK5QListIP19QAbstractTransitionE ...\MuseScore\win32install\bin\Qt5Core.dll 0x68a9055c
9 ?? 0x34e475d8
10 ?? 0x3cc4831f
11 ?? 0x5d5f5e5b
12 ?? 0x900004c2
13 ?? 0x26748d
14 ?? 0x1b8
15 ?? 0x88f18900
16 ?? 0xe81f2444
17 ?? 0x5d190
18 ?? C:\Windows\system32\atioglxx.dll 0x2444b60f

mscore/inspector/inspector.cpp, line 137 , with _element being the StaffText

deleting that measure's content (select measure, Del) and undo (Ctrl-Z) also leads to a crash, at the same spot.
Interestingly even with inspector being disabled.

There seems to be one element in the selected measure that is corrupt. I don't think it is the text; it is just that everything is compared against the text to see if we have a homogenous selection. Because it's corrupt, I can't see what it used to be, but it's clearly full of garbage now. I guess something got deleted but not removed from a list.

Not sure I understand what you see like corruption? Details? Because, as you can imagine, to do all my tests back in time, I have no other choice that to open nightlies via the "Special / RevertToFactorySettings" file.
So: never "outside" file, or imported, or other. Never... Guaranteed pure juice!
Here, a new test from scratch (created with the Nightly of today: 2e2aa1c). Without text (but the issue is not related)
Same result, of course.
new scratch test.mscz

I didn't mean that the measure was *already* corrupt: i meant that the act of changing the time signature seems to have partially corrupted it internally. The code for the Inspector is looking to look at the list of selected elements to decide what type(s) they are, and of the 20-something elements it finds (notes, stems, barlines, etc all count as separate elements), one of them has nonsense values.

Status (old) fixed needs info

This issue can be yet reproduced.

1) Open this file (tab staff "Simple" + linked standard staff): slash.mscz

2) Select the first measure in tab staff -> Measure properties

3) Change Actual value: 4/4 to 3/4 -> Ok

4) Undo

Result: crash

Note: the slash of the stemslash in the Tab staff type "Simple" should not be displayed, whereas in this staff type, nothing should be displayed outside the staff