[trunk] Crash on changing time signature
Setup trunk rev. 5304, latest Qt SDK (Qt lib 4.7.4) under Ubuntu 11.10
Steps:
1) Open (or create) any score,
2) At some point in the the mid of score, drop a different time signature on a measure (the new time sig. shall not be related to the previous one, like for instance 4/4 and C are)
Result: the program crashes (SIGFAULT)
Analysis:
The issue seems to origin in function void ScoreView::dropEvent()
(file mscore/dragdrop.cpp), line 506:
_score->select(dropElement, SELECT_SINGLE, 0);
Score::select()
calls the method type()
of dropElement
, but this method is pure virtual, at least in this context.
Note: dropping a time signature was possible only a few days ago, so it should be a rather recent change.
Thanks,
M.
Comments
I've found time signature change to be limited - usually, it doesn't do it correctly, or causes a crash.
I've filed a couple of reports (some still not filed - waiting for some fixes to help clear things up) - some I'm unsure of the cause.
Confirmed.
As for r5240, dropping a time signature didn't cause crash instantly, you had to write some chords.
See: #14583: Forming chord on entered notes after changing time signature in second bar causes crash
My report refers to rev. 5304 (and also to rev. 5307 now); the crash IS immediate:
Drop a new time signature somewhere mid-score => crash. No need (and no time!) to add anything. Measures before and after the drop point can be empty (only rests) or filled with notes, it doesn't matter.
M.
Sorry, I just wanted to point out that this is something that didn't use to happen.
This looks fixed as of bcc0170af4
Automatically closed -- issue fixed for 2 weeks with no activity.