13
0
livetrax/libs
Robin Gareus 72db091619
Fix crash at exit with classic Faderport
FaderPort::~FaderPort () can be called while
FaderPort::map_gain() is called from FaderPort::periodic()

```
Thread 71 Crashed:
0      libardour_faderport.dylib          	0x0000000110539c3a ArdourSurface::FaderPort::map_gain() + 138
1      libardour_faderport.dylib          	0x000000011053996d ArdourSurface::FaderPort::periodic() + 109
2      libglibmm-2.4.1.dylib                  	0x000000010bf21da8 Glib::TimeoutSource::dispatch(sigc::slot_base*) + 56
3      libglibmm-2.4.1.dylib                  	0x000000010bf20c97 Glib::Source::dispatch_vfunc(_GSource*, int (*)(void*), void*) + 39
4      libglib-2.0.0.dylib                      	0x000000010c012496 g_main_context_dispatch + 326
5      libglib-2.0.0.dylib                      	0x000000010c01281a g_main_context_iterate + 474
6      libglib-2.0.0.dylib                      	0x000000010c012b3f g_main_loop_run + 191
7      libpbd.dylib                                    	0x000000010bcee42e BaseUI::main_thread() + 254
8      libglibmm-2.4.1.dylib                  	0x000000010bf16373 (anonymous namespace)::call_thread_entry_slot(void*) + 35
9      libglib-2.0.0.dylib                      	0x000000010c03dd0a g_thread_proxy + 90
10    libsystem_pthread.dylib              	0x00007fff759e42eb _pthread_body + 126
11    libsystem_pthread.dylib              	0x00007fff759e7249 _pthread_start + 66
12    libsystem_pthread.dylib              	0x00007fff759e340d thread_start + 13
```

While the GUI thread has already closed the MIDI ports in ~FaderPort
and proceeded to take down the FP GUI.

```
Thread 0:: Dispatch queue: com.apple.main-thread

47    libgtkmm-2.4.1.dylib                    	0x000000010ca69a56 Gtk::ComboBox::~ComboBox() + 22
48    libardour_faderport.dylib          	0x000000011055a6e5 ArdourSurface::FPGUI::~FPGUI() + 149
49    libardour_faderport.dylib          	0x000000011055a8b5 ArdourSurface::FPGUI::~FPGUI() + 21
50    libardour_faderport.dylib          	0x0000000110551396 ArdourSurface::FaderPort::tear_down_gui() + 70
51    libardour_faderport.dylib          	0x0000000110536507 ArdourSurface::FaderPort::~FaderPort() + 535
52    libardour_faderport.dylib          	0x0000000110536b9e ArdourSurface::FaderPort::~FaderPort() + 14
53    libardour.dylib                              	0x000000010ac13f08 ARDOUR::ControlProtocolManager::drop_protocols() + 168
54    libardour.dylib                              	0x000000010b0ba7e4 ARDOUR::Session::destroy() + 212
55    libardour.dylib                              	0x000000010b0bbe01 ARDOUR::Session::~Session() + 113
56    libardour.dylib                              	0x000000010b0bdb5e ARDOUR::Session::~Session() + 14
2021-04-07 02:25:52 +02:00
..
appleutility NO-OP: fix some Wimplicit-fallthrough 2019-09-18 17:37:54 +02:00
ardour Export analysis: log loudness / time 2021-04-07 01:46:02 +02:00
ardouralsautil Fix C function prototypes 2020-12-01 12:08:09 +01:00
audiographer Export analysis: log loudness / time 2021-04-07 01:46:02 +02:00
backends gcc-11 compat, volatile atomic variables (1/2) 2021-03-22 15:30:07 +01:00
canvas Add missing class to canvas forward declarations 2021-02-14 00:54:17 +01:00
clearlooks-newer Special case checkbox border color in Treeview 2020-01-25 03:40:04 +01:00
evoral gcc-11 compat, volatile atomic variables (1/2) 2021-03-22 15:30:07 +01:00
fluidsynth Tweak fluidsynth performance on ARM CPUs 2020-12-12 22:03:05 +01:00
fst Fix typo in vst3-scanner --help text 2021-01-23 23:43:14 +01:00
gtkmm2ext Fix round-corner backround of insensitive ArdourWidgets 2021-02-14 22:53:18 +01:00
hidapi remove use of hardcoded -fPIC compiler flag, and use compiler flag dict instead 2018-10-14 22:06:11 -04:00
libltc Fix use of doxygen documented parameters in running text 2019-09-30 06:30:11 +02:00
lua Guard some code which isn't currently buildable with VS2019 2021-03-06 11:12:02 +00:00
midi++2 Transmitter::Debug implementation 1/2 2020-10-13 21:58:26 +02:00
panners Micro-optimization: pre-calculate pan-law 2021-01-18 16:14:16 +01:00
pbd Correctly detect glib volatile atomic 2021-03-30 15:29:53 +02:00
plugins a-delay: BPM is independent of the meter (quarter notes / min) 2021-03-28 18:23:07 +02:00
ptformat ptformat: Update to upstream 232ba25 2021-01-17 13:19:54 +11:00
qm-dsp Do not install static libs 2020-01-22 02:00:25 +01:00
surfaces Fix crash at exit with classic Faderport 2021-04-07 02:25:52 +02:00
temporal Fix normalization in Temporal::Beats for times between -1 and 0 beats 2020-11-18 13:40:31 -07:00
vamp-plugins Export analysis: log loudness / time 2021-04-07 01:46:02 +02:00
vamp-pyin Fix -Wsign-compare 2019-09-03 05:01:59 +02:00
vfork Update utility and tools GPL boilerplate and (C) from git log 2019-08-03 15:53:17 +02:00
vst3 Backport VST3 diagnostic pragma 2021-03-01 22:14:38 +01:00
waveview gcc-11 compat, volatile atomic variables (1/2) 2021-03-22 15:30:07 +01:00
widgets Further limit size of shaded "+" icon 2021-03-31 01:43:35 +02:00
zita-convolver zita-convolver: fix hang at when re-loading state 2021-03-30 01:29:28 +02:00
zita-resampler NO-OP fix typo in comment and header guard 2020-03-26 19:00:41 +01:00