Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

crash during instantiation/loading default tuning (in Ardour 6.5) #667

Closed
pauldavisthefirst opened this issue Feb 26, 2021 · 5 comments
Closed

Comments

@pauldavisthefirst
Copy link

pauldavisthefirst commented Feb 26, 2021

#0 0x00007f046d8da128 in std::__uniq_ptr_impl<sfz::Tuning::Impl, std::default_deletesfz::Tuning::Impl >::_M_ptr() const (this=)
at /usr/include/c++/8/ext/new_allocator.h:81
#1 0x00007f046d8da128 in std::unique_ptr<sfz::Tuning::Impl, std::default_deletesfz::Tuning::Impl >::get() const (this=)
at /usr/include/c++/8/bits/unique_ptr.h:343
#2 0x00007f046d8da128 in std::unique_ptr<sfz::Tuning::Impl, std::default_deletesfz::Tuning::Impl >::operator->() const (this=)
at /usr/include/c++/8/bits/unique_ptr.h:337
#3 0x00007f046d8da128 in sfz::Tuning::loadScalaFile(ghc::filesystem::path const&) (this=0x6769666fa253, path=...)
at /usr/local/music/src/sfizz/src/sfizz/Tuning.cpp:186
#4 0x00007f046d87478f in sfz::Synth::loadScalaFile(ghc::filesystem::path const&) (this=this@entry=0x5578749cb390, path=...)
at /usr/local/music/src/sfizz/src/sfizz/Synth.cpp:769
#5 0x00007f046d873bc2 in sfizz_load_scala_file(sfizz_synth_t*, char const*)
(synth=0x5578749cb390, path=path@entry=0x5578749e5069 "/home/paul/.lv2/sfizz.lv2//Contents/Resources/DefaultScale.scl")
at /usr/include/c++/8/bits/stl_iterator.h:783
#6 0x00007f046d86ea09 in sfizz_lv2_load_scala_file(LV2_Handle, char const*)
(instance=0x5578749cb0f0, file_path=file_path@entry=0x5578749e5069 "/home/paul/.lv2/sfizz.lv2//Contents/Resources/DefaultScale.scl")
at /usr/local/music/src/sfizz/plugins/lv2/sfizz.cpp:1206
#7 0x00007f046d86f90e in restore(LV2_Handle, LV2_State_Retrieve_Function, LV2_State_Handle, uint32_t, LV2_Feature const* const*)
(instance=0x5578749e4a00, retrieve=, handle=0x557874c80070, flags=, features=)
at /usr/local/music/src/sfizz/plugins/lv2/sfizz.cpp:1327
#8 0x00007f055519f208 in lilv_state_restore () at /lib/x86_64-linux-gnu/liblilv-0.so.0
#9 0x00007f0559367925 in ARDOUR::LV2Plugin::init(void const*, long) (this=0x557874999440, c_plugin=0x557871a97030, rate=44100) at ../libs/ardour/lv2_plugin.cc:950
#10 0x00007f055936491b in ARDOUR::LV2Plugin::LV2Plugin(ARDOUR::AudioEngine&, ARDOUR::Session&, void const*, long) (this=0x557874999440, engine=...,
session=..., c_plugin=0x557871a97030, rate=44100) at ../libs/ardour/lv2_plugin.cc:405
#11 0x00007f05593767f1 in ARDOUR::LV2PluginInfo::load(ARDOUR::Session&) (this=0x557872efda30, session=...) at ../libs/ardour/lv2_plugin.cc:3521
#12 0x00007f05591e295b in ARDOUR::Session::load_and_connect_instruments(std::__cxx11::list<boost::shared_ptrARDOUR::Route, std::allocator<boost::shared_ptrARDOUR::Route > >&, bool, boost::shared_ptrARDOUR::PluginInfo, ARDOUR::Plugin::PresetRecord*, ARDOUR::ChanCount&)
(this=0x557872d0c470, new_routes=std::__cxx11::list = {...}, strict_io=true, instrument=..., pset=0x0, existing_outputs=...) at ../libs/ardour/session.cc:3266
#13 0x00007f05591dc43c in ARDOUR::Session::new_midi_track(ARDOUR::ChanCount const&, ARDOUR::ChanCount const&, bool, boost::shared_ptrARDOUR::PluginInfo, ARDOUR::Plugin::PresetRecord*, ARDOUR::RouteGroup*, unsigned int, std::__cxx11::basic_string<char, std::char_traits, std::allocator >, unsigned int, ARDOUR::TrackMode, bool) (this=0x557872d0c470, input=..., output=..., strict_io=true, instrument=..., pset=0x0, route_group=
0x0, how_many=0, name_template="sfizz", order=4294967295, mode=ARDOUR::Normal, input_auto_connect=true) at ../libs/ardour/session.cc:2473
#14 0x000055786f26aa49 in ARDOUR_UI::session_add_midi_route(bool, ARDOUR::RouteGroup*, unsigned int, std::__cxx11::basic_string<char, std::char_traits, std::allocator > const&, bool, boost::shared_ptrARDOUR::PluginInfo, ARDOUR::Plugin::PresetRecord*, unsigned int) (this=
0x55787121e040, disk=true, route_group=0x0, how_many=1, name_template="sfizz", strict_io=true, instrument=..., pset=0x0, order=4294967295)
at ../gtk2_ardour/ardour_ui.cc:1515
#15 0x000055786f27128e in ARDOUR_UI::add_route_dialog_response(int) (this=0x55787121e040, r=1) at ../gtk2_ardour/ardour_ui.cc:2793
#16 0x000055786f2a1190 in sigc::bound_mem_functor1<void, ARDOUR_UI, int>::operator()(int const&) const (this=0x5578747054d8, _A_a1=@0x7ffe8b74397c: 1)
at /usr/include/sigc++-2.0/sigc++/functors/mem_fun.h:2066
sfztools/sfizz-ui#88 0x000055786f29a21b in sigc::adaptor_functor<sigc::bound_mem_functor1<void, ARDOUR_UI, int> >::operator()<int const&>(int const&) const
(this=0x5578747054d0, _A_arg1=@0x7ffe8b74397c: 1) at /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:89
#18 0x000055786f291cb8 in sigc::internal::slot_call1<sigc::bound_mem_functor1<void, ARDOUR_UI, int>, void, int>::call_it(sigc::internal::slot_rep*, int const&)
(rep=0x5578747054a0, a_1=@0x7ffe8b74397c: 1) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:170
#19 0x00007f0555becf27 in () at /lib/x86_64-linux-gnu/libgtkmm-2.4.so.1
#20 0x00007f0556a28c8d in g_closure_invoke () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#21 0x00007f0556a3be64 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#22 0x00007f0556a452be in g_signal_emit_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#23 0x00007f0556a4597f in g_signal_emit () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#24 0x00007f0556a28c8d in g_closure_invoke () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#25 0x00007f0556a3c365 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#26 0x00007f0556a452be in g_signal_emit_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#27 0x00007f0556a4597f in g_signal_emit () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#28 0x00007f0556531e25 in () at /lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
sfztools/sfizz-ui#87 0x00007f0556a28c8d in g_closure_invoke () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#30 0x00007f0556a3c4b4 in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#31 0x00007f0556a452be in g_signal_emit_valist () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#32 0x00007f0556a4597f in g_signal_emit () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#33 0x00007f0556530d69 in () at /lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#34 0x00007f05565d71eb in () at /lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0
#35 0x00007f0556a28c8d in g_closure_invoke () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0
#36 0x00007f0556a3bbbd in () at /lib/x86_64-linux-gnu/libgobject-2.0.so.0

Let me know what, if anything, I can do to help. This was from a version of sfizz built locally using git master about 15 hours ago.

@stefanos82
Copy link

stefanos82 commented Feb 26, 2021

@pauldavisthefirst even though this project is not my area, I have noticed something in the output that caught my attention:

sfztools/sfizz#5 0x00007f046d873bc2 in sfizz_load_scala_file(sfizz_synth_t*, char const*)
(synth=0x5578749cb390, path=path@entry=0x5578749e5069 "/home/paul/.lv2/sfizz.lv2//Contents/Resources/DefaultScale.scl")
at /usr/include/c++/8/bits/stl_iterator.h:783

sfztools/sfizz#6 0x00007f046d86ea09 in sfizz_lv2_load_scala_file(LV2_Handle, char const*)
(instance=0x5578749cb0f0, file_path=file_path@entry=0x5578749e5069 "/home/paul/.lv2/sfizz.lv2//Contents/Resources/DefaultScale.scl")
at /usr/local/music/src/sfizz/plugins/lv2/sfizz.cpp:1206

Is there a slash normalization somewhere or it doesn't matter?

What's the missing path between sfizz.lv2/ and /Contents/?

@pauldavisthefirst
Copy link
Author

There's no missing path there. To be canonical, the '//' should indeed be a single slash. However, in both the C library and the kernel, '//' is handled equivalently to '/' AFAIK. I don't think that's the issue.

@stefanos82
Copy link

thank you for the clarification @pauldavisthefirst

@jpcima
Copy link
Collaborator

jpcima commented Feb 26, 2021

This has been fixed in #668 ; a memory corruption that occured in LV2 only, by passing the wrong value as LV2_Handle.

@jpcima jpcima closed this as completed Feb 26, 2021
@jpcima
Copy link
Collaborator

jpcima commented Feb 26, 2021

Thanks for the report

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants