Crash when scrolling in panoramic view and mmRest

• May 18, 2015 - 17:06
Type
Functional
Severity
S2 - Critical
Status
closed
Project

MS 2.0.1 is crashes on scroll in continous view with exception
Unhandled exception at 0x007A0990 in MuseScore.exe: 0xC0000005: Access violation reading location 0x000000AC.

Thanks


Comments

In order to do anything about this, we need to be able to reproduce it. So please:

1) tell us what OS you are on
2) post the score you are having problems with
3) give *precise* step by step instructions to reproduce the problem

ad 3. How to scroll with the mouse? I tried

  • Shift+Scroll wheel
  • the vertical slider in the navigator, then click into it
  • dragging the frame in the navigator
  • dragging the score
  • PageUp

No crash. Windows 7 (Ebterprise, 64bit)

Hello

I just open attached file, switch to continuous view, slide several times left (it depends from time to time, but I've never scroll to the end), then app is crashed. (Unhandled exception at 0x007A0990 in MuseScore.exe: 0xC0000005: Access violation reading location 0x000000AC.)

NB. May be you confusing my term "scroll left" - i mean i drag the score to the highest measures

Thanks

Status (old) needs info active

I can reproduce by different ways ( the behavior is somewhat capricious...)

The surest way to accomplish this:
1) Open this score: 1Okh_ty_Porushka_Paranya_0.mscz

EDIT:Download the file (Save the file) rather than Open it directly (because the navigator size obviously affects the location of the measure where you click)
2) Continuous view
3) In the Navigator, click on the last visible measure on top staff to bring the blue rectangle at the beginning of the measure #22
measure 22.jpg
4) With the mouse, drag the score to the right x times (in an empty space above the top staff) starting from the measure #24. Result: crash

If you do not receive a crash, repeat step #3, but start to drag from the previous measure #23 (with the whole rest), by beginning the drag just after the whole rest
And if still no crash, repeat step #3. But by beginning the drag just before the whole rest (measure #23 always)
I think with the three scenarios, you are sure to receive this crash!
crash.jpg

EDIT: other scenario (among others): at step #3, click on the measure #23 (with the whole rest) and start to drag from the previous measure (#22) for example...

I also can reproduce, Windows 8.1 commit af0e7f1
It is related to the multi-measure rest.
Attached a minimal crashing score.
1- Open the score;
2- Go to continuous view;
3- Drag to the left with the mouse.
When the MMrest touches the blue (continuous view) panel, MuseScore crashes.

This happens when the file is loaded and MMrest is already on (from the settings stored in the file). Indeed, if after step 1 MMrest is toggled off and then on again, the crash disappear.

gdb backtrace:
#0 0x00beaffc in QListData::isEmpty (this=0xac) at C:/Qt/5.4/mingw491_32/include/QtCore/qlist.h:93
#1 0x00bd63df in QList::isEmpty (this=0xac) at C:/Qt/5.4/mingw491_32/include/QtCore/qlist.h:158
#2 0x007c64aa in Ms::System::lastMeasure (this=0x0) at C:\Git_packages\MuseScore\libmscore\system.cpp:807
#3 0x00845bf7 in Ms::Clef::layout (this=0x20626e78) at C:\Git_packages\MuseScore\libmscore\clef.cpp:188
#4 0x0066e8cf in Ms::ContinuousPanel::findElementWidths (this=0x20063620, el=) at C:\Git_packages\MuseScore\mscore\continuouspanel.cpp:219
#5 0x0066e43b in Ms::ContinuousPanel::paint (this=0x20063620, p=...) at C:\Git_packages\MuseScore\mscore\continuouspanel.cpp:155
#6 0x00409616 in Ms::ScoreView::paintEvent (this=0x20089fd0, ev=0x28ccec) at C:\Git_packages\MuseScore\mscore\scoreview.cpp:1684
#7 0x17debc60 in ZN7QWidget5eventEP6QEvent () from C:\Git_packages\MuseScore\win32install\bin\Qt5Widgets.dll
#8 0x0028ca4c in ?? ()
#9 0x08ec8300 in ?? ()

In clef.cpp at line 188 the measure meas returns 0 as its system.

EDIT: I forgot the attachment: Okh_ty_Porushka_Paranya_reduced.mscz

Attachment Size
Okh_ty_Porushka_Paranya_reduced.mscz 6.54 KB

Depends also with the zoom value, right?
I can't reproduce with a 100% value (because, the MM rest don't touches the blue)
I can reproduce i.e. with a 120% value and higher (150% etc.)