Opening two scores at the same time causes crash

• Oct 13, 2012 - 16:06
Type
Functional
Severity
S2 - Critical
Status
closed
Project

1. Start MuseScore in 'native' and 'use native dialogs' ticked.
2. 'Open'.
3. Select the two attached scores.
4. 'Open'.

Result: Crash.

Discussion: See crash log .

Using MuseScore 2.0 Nightly Build (fdd8040) - Mac 10.7.5.

Attachment Size
Score 1.mscz 1.96 KB
Score 2.mscz 1.95 KB

Comments

The interesting part of the log

5 QtCore 0x0000000104780d8d qFatal(char const*, ...) + 141
6 QtCore 0x0000000104780dbe qt_assert_x(char const*, char const*, char const*, int) + 30
7 net.sourceforge.mscore 0x0000000100259450 QList::operator[](int) + 96
8 net.sourceforge.mscore 0x0000000100257d62 Score::midiMapping(int) + 34
9 net.sourceforge.mscore 0x0000000100254a57 Seq::putEvent(Event const&) + 71
10 net.sourceforge.mscore 0x0000000100254d7c Seq::processMessages() + 428
11 net.sourceforge.mscore 0x00000001002552af Seq::process(unsigned int, float*) + 271
12 net.sourceforge.mscore 0x000000010049e208 paCallback(void const*, void*, unsigned long, PaStreamCallbackTimeInfo const*, unsigned long, void*) + 72

Seq::putEvent() is called in a background thread, while the UI is loading another score and so the MIDI mapping list is changed while we are accessing it. Or I'm totally wrong... and see thread synchronization issue everywhere.