Crash when MM rests are enabled in Continuous view
GIT commit: 6247147 / Windows7
1) Default "Untitled" score
2) Switch in Continuous View
3) Press "M"
Result: crash
Or:
1) Default "Untitled" score
2) Press "M"
3) Switch in Continuous View
4) Press "M"
Result: crash
Comments
Related to this I guess (maybe)? #137501: Inability to show multi-measure rests in Continuous View
relates to #272135: [EPIC] Continuous view issues
see https://github.com/musescore/MuseScore/pull/3901
I am still able to reproduce the crash even after applying the above patch. I had thought I had fixed this once also, but I too was mistaken. The patch may prevent a crash I encountered once while trying to diagnose this bug, but I am not sure I understand what this fix has to do with multi-measure rests.
In reply to I am still able to reproduce… by mattmcclinch
mattmcclinch could you describe the steps to reproduce the crush.
I follow the next scenario:
1) Run MuseScore
2) Default "Untitled" score
3) Switch in continuous view
4) Press "m"
Result: crush
In my scenario crush is disappear. Fix repairs only the crush , MuseScore does not still show multi-measure rests in continuous view. I guess fixing multi-measure rests should be in the another Pull Request #137501: Inability to show multi-measure rests in Continuous View
Copied from cadiz1's second scenario (step 4 is not necessary):
1) Default "Untitled" score
2) Press "M"
3) Switch in Continuous View
Result: crash
The crash happens in Timeline::updateView() during a call to system->canvasBoundingRect().
If it makes a difference, my operating system is macOS 10.13.6. I am currently compiling your fix#275552MMrests branch in Visual Studio to see if I can reproduce the crash in Windows.
It crashes for me in Windows at the same place in the code.
Thanks. Working...
Fixed in branch master, commit b259099300
fix #275552 fix#137501: Inability to show MM rests in Continuous View
1) The reason of crash is utilizing already deleted pointer. Each element are lying in tree. The parent of VBox element is System element. When we change mode to continuous view MS deleted all system elements and create new one. Then populate new tree with new system which root. But VBox is not shown in continuous view and MS do not set new parent for VBox. Sow VBox have pointer to deleted SYstem element. I fixed it.
2) Add header file to libmscore/CMakeLists. It doesn't effect on building, But it is necessary to include header files to Visual Studio IDE
3) Fix inability to show multi-measure rests in Continuous View see https://musescore.org/en/node/137501
Fixed in branch master, commit 4e75c325ef
Merge pull request #3901 from handrok/fix#275552MMrests
fix #275552 fix#137501: Inability to show multi-measure rests in Continuous View
Automatically closed -- issue fixed for 2 weeks with no activity.