Happens on trunk r2384. A segmentation fault occurs in a specific case when MidiScriptEngine::getScriptFunctions() tries to lock its mutex during MidiMapping::loadPreset(). (See attached backtrace.)
Steps to establish test conditions:
1) Start Mixxx with a MIDI controller attached
2) Activate it in the preferences
3) Close Mixxx so that state is saved.
Steps to reproduce:
1) Start Mixxx with a MIDI controller attached that had been activated on the last run.
2) Open preferences
3) Select that controller and de-activate it.
4) Click OK.
5) Re-open preferences
6) Select that controller
7) Activate it, and immediately load a mapping for it
8) Observe the crash
Happens on trunk r2384. A segmentation fault occurs in a specific case when MidiScriptEngin e::getScriptFun ctions( ) tries to lock its mutex during MidiMapping: :loadPreset( ). (See attached backtrace.)
Steps to establish test conditions:
1) Start Mixxx with a MIDI controller attached
2) Activate it in the preferences
3) Close Mixxx so that state is saved.
Steps to reproduce:
1) Start Mixxx with a MIDI controller attached that had been activated on the last run.
2) Open preferences
3) Select that controller and de-activate it.
4) Click OK.
5) Re-open preferences
6) Select that controller
7) Activate it, and immediately load a mapping for it
8) Observe the crash