Problems with recent changes to undo?
Hi,
since a few days (difficult to say how long, I think at least a week), many undo operations result in crash. Rather than a long list of individual cases, I think that saying that most changes through dlg box settings (like, "Style | Texts" or "Style | Edit staff types") are affected gives an idea. In other words, making some changes through those dlg and then undoing it results in SIGFAULT. An example which should be easily reproducible can be:
1) Create or open a score
2) Change the font size of one of the "Styles | Texts"
3) Accept
4) Undo
This just one example. I don't think there is anything wrong with font sizes in particular, as many other undo operations have the same result. This points to some recent, rather general structural change in the undo framework. Possibly this will ring some bell to the core developers.
In many cases (all the cases since I noticed this), the crash is in function void Score::removeElement(Element* element)
(file libmscore/score.cpp) at line 1510 which says:
if (element->parent() && element->parent()->type() == Element::SEGMENT)
The problem seems to be that:
1) the function is called with this
(i.e. the score object) being 0.
OR
2) element
has a non-null parent
, but the pointer is invalid
OR both.
Any bell, anyone?
EDIT (I forgot to add): I'm running self-compiled source code under Linux Mint 14, with Qt libs 4.8.3 and Qt Creator 2.5.2
M.
Comments
Is this now fixed?
There were some reports, which are now fixed, including this: #21546: Undo the edit of beamed notes in tablature causes crash