View Issue Details

IDProjectCategoryView StatusLast Update
0005413ardourbugspublic2016-11-30 16:57
Reporterjohmue-eo Assigned Topaul  
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Product Version3.0 
Summary0005413: Ardour crashes on loading a session after startup if lxvst is compiled in
DescriptionRecipie:
1. start jack (with a2jmidid)
2. start ardour

3. select "open an existing session"
4. select session

alternative
3. select "create a new session"
4. select a session name

5. crash due to segfault

jackd 1.9.95
Ardour3 built from source code from stable git rep
Ubuntu 12.10

The crash occurs only if lxvst is enabled.

Workaround:
Setting lxvst_default False in wscript
Additional InformationProgram received signal SIGSEGV, Segmentation fault.
0x00000000010f7a00 in __gnu_cxx::__normal_iterator<std::string**, std::vector<std::string*, std::allocator<std::string*> > >::__normal_iterator (
    this=0x7fffffffcf50, __i=@0x0: <error reading variable>)
    at /usr/include/c++/4.7/bits/stl_iterator.h:728
728 __normal_iterator(const _Iterator& __i) : _M_current(__i) { }

#0 0x00000000010f7a00 in __gnu_cxx::__normal_iterator<std::string**, std::vector<std::string*, std::allocator<std::string*> > >::__normal_iterator (
    this=0x7fffffffcf50, __i=@0x0: <error reading variable>)
    at /usr/include/c++/4.7/bits/stl_iterator.h:728
0000001 0x00000000010f70cf in std::vector<std::string*, std::allocator<std::string*> >::begin (this=0x0) at /usr/include/c++/4.7/bits/stl_vector.h:519
#2 0x00007ffff7508044 in vector_delete<std::string> (vec=0x0)
    at /data/software/Musik/Ardour/Ardour-3.0/libs/pbd/pbd/stl_delete.h:31
#3 0x00007ffff750660c in ARDOUR::PluginManager::lxvst_discover_from_path (
    this=0x210b6d0, path=...) at ../libs/ardour/plugin_manager.cc:689
0000004 0x00007ffff75062e0 in ARDOUR::PluginManager::lxvst_refresh (this=0x210b6d0)
    at ../libs/ardour/plugin_manager.cc:650
0000005 0x00007ffff7504711 in ARDOUR::PluginManager::refresh (this=0x210b6d0)
    at ../libs/ardour/plugin_manager.cc:187
#6 0x00007ffff73e6e27 in ARDOUR::init_post_engine ()
    at ../libs/ardour/globals.cc:352
#7 0x0000000000e1707a in ARDOUR_UI::post_engine (this=0x1e51ca0)
    at ../gtk2_ardour/ardour_ui.cc:383
0000008 0x0000000000e16f60 in ARDOUR_UI::create_engine (this=0x1e51ca0)
    at ../gtk2_ardour/ardour_ui.cc:372
0000009 0x0000000000e22f4b in ARDOUR_UI::get_session_parameters (this=0x1e51ca0,
    quit_on_cancel=true, should_be_new=false, load_template=...)
    at ../gtk2_ardour/ardour_ui.cc:2608
0000010 0x0000000000e1922f in ARDOUR_UI::startup (this=0x1e51ca0)
    at ../gtk2_ardour/ardour_ui.cc:663
0000011 0x0000000000e48d7a in sigc::bound_mem_functor0<void, ARDOUR_UI>::operator()
    (this=0x237e118) at /usr/include/sigc++-2.0/sigc++/functors/mem_fun.h:1787
0000012 0x0000000000e43a0c in sigc::adaptor_functor<sigc::bound_mem_functor0<void, ARDOUR_UI> >::operator() (this=0x237e110)
    at /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:251
0000013 0x0000000000e3d87f in sigc::internal::slot_call0<sigc::bound_mem_functor0<void, ARDOUR_UI>, void>::call_it (rep=0x237e0e0)
    at /usr/include/sigc++-2.0/sigc++/functors/slot.h:103
0000014 0x0000000000e0cb7c in sigc::internal::signal_emit0<void, sigc::nil>::emit (
    impl=0x237e090) at /usr/include/sigc++-2.0/sigc++/signal.h:776
#15 0x0000000000e0ef86 in sigc::signal0<void, sigc::nil>::emit (this=0x1e51d90)
    at /usr/include/sigc++-2.0/sigc++/signal.h:2673
0000016 0x0000000000e0e1fa in sigc::signal0<void, sigc::nil>::operator() (
    this=0x1e51d90) at /usr/include/sigc++-2.0/sigc++/signal.h:2681
#17 0x00007ffff62410c3 in Gtkmm2ext::UI::run (this=0x1e51ca0, old_receiver=...)
    at ../libs/gtkmm2ext/gtk_ui.cc:268
0000018 0x00000000011d83fe in main (argc=1, argv=0x7fffffffdb28)
    at ../gtk2_ardour/main.cc:525
TagsNo tags attached.

Activities

johmue-eo

2013-03-25 18:53

developer   ~0014776

svn rev 14095 is not affected

johmue-eo

2013-03-25 19:29

developer   ~0014777

This patch fixes or works around the problem ...


diff --git a/libs/ardour/plugin_manager.cc b/libs/ardour/plugin_manager.cc
index a67dc97..8c37ba3 100644
--- a/libs/ardour/plugin_manager.cc
+++ b/libs/ardour/plugin_manager.cc
@@ -684,9 +684,9 @@ PluginManager::lxvst_discover_from_path (string path)
                for (x = plugin_objects->begin(); x != plugin_objects->end (); ++x) {
                        lxvst_discover (**x);
                }
+ vector_delete (plugin_objects);
        }
 
- vector_delete (plugin_objects);
        return ret;
 }

paul

2013-03-28 22:13

administrator   ~0014788

this patch was already applied in commit 4caecfa310a973773a74e74939896133ad6d4c8d

you appear to be using an old version ....

paul

2013-04-06 13:33

administrator   ~0014827

closed to due to lack of feedback (and resolved anyway).

johmue-eo

2016-11-30 16:57

developer   ~0019096

resolved a long time ago

Issue History

Date Modified Username Field Change
2013-03-25 18:50 johmue-eo New Issue
2013-03-25 18:53 johmue-eo Note Added: 0014776
2013-03-25 19:29 johmue-eo Note Added: 0014777
2013-03-28 22:13 paul Note Added: 0014788
2013-04-06 13:33 paul Note Added: 0014827
2013-04-06 13:33 paul Status new => resolved
2013-04-06 13:33 paul Resolution open => fixed
2013-04-06 13:33 paul Assigned To => paul
2016-11-30 16:57 johmue-eo Note Added: 0019096
2016-11-30 16:57 johmue-eo Status resolved => closed