View Issue Details

IDCategoryLast Update
0008371bugs2020-08-19 20:27
ReporternikAssigned Tox42 
Status resolvedResolutionfixed 
PlatformGNUOSLinuxOS Version(any)
Product Version 
Fixed in Version 
Summary0008371: a-b Switch and a-Cross Fade crash when put on master strip
DescriptionAdding the a-b Switch and a-Cross Fade plugin to the Master channelstrip causes it throw a failed constructor for Monitor/audio_out 2

It does not crash when modifying the plugin to change connect_all_audio_outputs to false (L#16)
Steps To ReproduceOpen a session, add the a-b Switch plugin or the a-Cross Fade plugin
Additional InformationFailed to register port "Monitor/audio_out 2", reason is unknown from here

(ardour-6.0.49:28363): glibmm-ERROR **: 14:18:37.094:
unhandled exception (type std::exception) in signal handler:
what: unable to create port 'Monitor/audio_out 2': failed constructor

ardour-6.0.49: ../libs/ardour/ static ARDOUR::BufferSet& ARDOUR::ProcessThread::get_route_buffers(ARDOUR::ChanCount, bool): Assertion `sb->available() >= count' failed.

Thread 1 "ArdourGUI" received signal SIGTRAP, Trace/breakpoint trap.
[Switching to Thread 0x7ffff04c4ec0 (LWP 28363)]
0x00007ffff5520937 in g_log_structured_array () from /lib64/
(gdb) bt
#0 0x00007ffff5520937 in g_log_structured_array () at /lib64/
0000001 0x00007ffff5520d49 in g_log_default_handler () at /lib64/
#2 0x00007ffff5520f99 in g_logv () at /lib64/
#3 0x00007ffff5521233 in g_log () at /lib64/
0000004 0x00007ffff5694cb9 in Glib::exception_handlers_invoke() [clone .cold] () at /lib64/
0000005 0x00007ffff47c44e2 in (anonymous namespace)::Widget_signal_button_press_event_callback(_GtkWidget*, _GdkEventButton*, void*) [clone .cold] () at /lib64/
#6 0x00007ffff515bd9d in _gtk_marshal_BOOLEAN__BOXED () at /lib64/
#7 0x00007ffff560488a in g_closure_invoke () at /lib64/
0000008 0x00007ffff5617612 in signal_emit_unlocked_R.isra.0 () at /lib64/
0000009 0x00007ffff561d3be in g_signal_emit_valist () at /lib64/
0000010 0x00007ffff561dc63 in g_signal_emit () at /lib64/
0000011 0x00007ffff5299384 in gtk_widget_event_internal () at /lib64/
0000012 0x00007ffff51598f4 in gtk_propagate_event () at /lib64/
0000013 0x00007ffff5159d3b in gtk_main_do_event () at /lib64/
0000014 0x00007ffff4f9ef90 in gdk_event_dispatch () at /lib64/
#15 0x00007ffff551978f in g_main_context_dispatch () at /lib64/
0000016 0x00007ffff5519b18 in g_main_context_iterate.constprop () at /lib64/
#17 0x00007ffff5519e33 in g_main_loop_run () at /lib64/
0000018 0x00007ffff5158ba2 in gtk_main () at /lib64/
0000019 0x00007ffff5b53e88 in Gtkmm2ext::UI::run(Receiver&) (this=0x1df7280, old_receiver=...) at ../libs/gtkmm2ext/
0000020 0x0000000000ce5cd6 in main(int, char**) (argc=1, argv=0x7fffffffd5a8) at ../gtk2_ardour/
Tagsardour6, Lua, plugin



2020-08-19 19:41

administrator   ~0024943

This requires a monitor section to be present (master bus alone is not affected).

It also happens with any plugin when using pin-connection to manually remove an output port (as long as strict i/o is enabled).


2020-08-19 19:47

administrator   ~0024944

BTW, the get_route_buffers() assertion has already been fixed in ardour/git since 6.0.49.


2020-08-19 20:20

reporter   ~0024945

Confirmed on the Monitor section being the issue, I am running 6.0.49 though, and it still has that assertion error


2020-08-19 20:27

administrator   ~0024946

Fixed in 6.2-185-gaa69fe49f5

Issue History

Date Modified Username Field Change
2020-08-19 19:26 nik New Issue
2020-08-19 19:26 nik Tag Attached: ardour6
2020-08-19 19:26 nik Tag Attached: Lua
2020-08-19 19:26 nik Tag Attached: plugin
2020-08-19 19:41 x42 Note Added: 0024943
2020-08-19 19:47 x42 Note Added: 0024944
2020-08-19 20:20 nik Note Added: 0024945
2020-08-19 20:27 x42 Assigned To => x42
2020-08-19 20:27 x42 Status new => resolved
2020-08-19 20:27 x42 Resolution open => fixed
2020-08-19 20:27 x42 Note Added: 0024946