View Issue Details

IDProjectCategoryView StatusLast Update
0001688ardourbugspublic2007-05-22 11:22
ReporterHollunder Assigned Topaul  
PrioritynormalSeveritycrashReproducibilityalways
Status closedResolutionfixed 
Product Version2.0 
Summary0001688: Crash after clicking on "hidden" in the region panel
DescriptionArdour 2.0 built from revision 1762 (the thing that ships with ubuntu studio)

To reproduce:
-hide a region
-click on the word "Hidden" in the region panel on the right
-ardour should crash now

See the terminal output below
Additional InformationArdour/GTK 2.0
   (built using 1762 and GCC version 4.1.2 (Ubuntu 4.1.2-0ubuntu4))
Copyright (C) 1999-2007 Paul Davis
Some portions Copyright (C) Steve Harris, Ari Johnson, Brett Viren, Joel Baker

Ardour comes with ABSOLUTELY NO WARRANTY
not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
This is free software, and you are welcome to redistribute it
under certain conditions; see the source for copying conditions.
Loading ui configuration file /etc/ardour2/ardour2_ui.rc
theme_init() called from internal clearlooks engine
loading system configuration file /etc/ardour2/ardour_system.rc
loading user configuration file /home/hollunder/.ardour2/ardour.rc
ardour: [INFO]: No H/W specific optimizations in use
ardour: [INFO]: looking for control protocols in /home/hollunder/.ardour2/surfaces/:/usr/lib/ardour2/surfaces/
ardour: [INFO]: Control surface protocol discovered: "Generic MIDI"
ardour: [INFO]: Control surface protocol discovered: "Mackie"
loading bindings from /etc/ardour2/ardour.bindings
Loading session /home/hollunder/Audio/teststuff/testsession using snapshot testsession (1)
ardour: [WARNING]: Session: XML state has no click section
Loading history from '/home/hollunder/Audio/teststuff/testsession/testsession.history'.
ardour-2.0: /usr/include/boost/shared_ptr.hpp:253: T* boost::shared_ptr<T>::operator->() const [with T = const ARDOUR::Region]: Assertion `px != 0' failed.
Aborted (core dumped)
TagsNo tags attached.

Activities

nowhiskey

2007-05-21 11:50

reporter   ~0004001

i can reproduce this, simply clicking 'hide' in the region panel on the right, ardour is crashing.
the version here is 2.0-ongoing, up-to-date.
here is my backtrace:

Thread 5 (process 5167):
#0 0xb6a82b3c in __nanosleep_nocancel () from /lib/tls/libpthread.so.0
0000001 0xb75d5292 in g_usleep () from /usr/share/qt4/lib/libglib-2.0.so.0
#2 0xb6d54a25 in Glib::usleep (microseconds=10000) at
#libs/glibmm2/glibmm/timer.cc:68
#3 0xb7ce0a24 in ARDOUR::AudioEngine::meter_thread (this=0x8b1c5d8) at
#libs/ardour/audioengine.cc:412
0000004 0xb7ce3726 in sigc::bound_mem_functor0<void,
#ARDOUR::AudioEngine>::operator() (this=0x8b1c69c) at
#libs/sigc++2/sigc++/functors/mem_fun.h:1781
0000005 0xb7ce3748 in sigc::adaptor_functor<sigc::bound_mem_functor0<void,
#ARDOUR::AudioEngine> >::operator() (this=0x8b1c698)
    at libs/sigc++2/sigc++/adaptors/adaptor_trait.h:251
#6 0xb7ce3774 in sigc::internal::slot_call0<sigc::bound_mem_functor0<void,
ARDOUR::AudioEngine>, void>::call_it (rep=0x8b1c680)
    at libs/sigc++2/sigc++/functors/slot.h:103
#7 0x08365c92 in sigc::slot0<void>::operator() (this=0x8a96c00) at
libs/sigc++2/sigc++/functors/slot.h:440
0000008 0xb6d7224f in call_thread_entry_slot (data=0x8a96c00) at
libs/glibmm2/glibmm/thread.cc:43
0000009 0xb75d32cf in g_thread_create_full () from
/usr/share/qt4/lib/libglib-2.0.so.0
0000010 0xb6a7d0bd in start_thread () from /lib/tls/libpthread.so.0
0000011 0xb683a9ee in clone () from /lib/tls/libc.so.6

Thread 4 (process 5170):
#0 0xb6830ef9 in poll () from /lib/tls/libc.so.6
0000001 0xb6a904ab in jack_client_thread (arg=0x8b26e08) at client.c:1309
#2 0xb6a966b0 in jack_thread_proxy (varg=0x8da9e90) at thread.c:111
#3 0xb6a7d0bd in start_thread () from /lib/tls/libpthread.so.0
0000004 0xb683a9ee in clone () from /lib/tls/libc.so.6

Thread 3 (process 5175):
#0 0xb6830ef9 in poll () from /lib/tls/libc.so.6
0000001 0xb7e0fa03 in ARDOUR::Session::butler_thread_work (this=0x8df01c0) at
#libs/ardour/session_butler.cc:176
#2 0xb7e107e7 in ARDOUR::Session::_butler_thread_work (arg=0x8df01c0) at
#libs/ardour/session_butler.cc:157
#3 0xb6a7d0bd in start_thread () from /lib/tls/libpthread.so.0
0000004 0xb683a9ee in clone () from /lib/tls/libc.so.6

Thread 2 (process 5176):
#0 0xb6830ef9 in poll () from /lib/tls/libc.so.6
0000001 0xb7e2eea7 in ARDOUR::Session::midi_thread_work (this=0x8df01c0) at
#libs/ardour/session_midi.cc:1207
#2 0xb7e2f411 in ARDOUR::Session::_midi_thread_work (arg=0x8df01c0) at
#libs/ardour/session_midi.cc:1128
#3 0xb6a7d0bd in start_thread () from /lib/tls/libpthread.so.0
0000004 0xb683a9ee in clone () from /lib/tls/libc.so.6

Thread 1 (process 5160):
#0 0x0843a6a3 in shared_ptr (this=0xbfdd73d8) at
/usr/include/boost/shared_ptr.hpp:106
0000001 0x08483de6 in Glib::Value<boost::shared_ptr<ARDOUR::Region> >::get
#(this=0xbfdd71d0) at libs/glibmm2/glibmm/value_custom.h:244
#2 0x08512b7d in Gtk::TreeRow::get_value<boost::shared_ptr<ARDOUR::Region>
#> (this=0xbfdd7400, column=@0x8c392e4) at
#> libs/gtkmm2/gtk/gtkmm/treeiter.h:483
#3 0x08512bdd in Gtk::TreeValueProxy<boost::shared_ptr<ARDOUR::Region>
#>::operator boost::shared_ptr<ARDOUR::Region> (this=0xbfdd74f0)
    at libs/gtkmm2/gtk/gtkmm/treeiter.h:435
0000004 0x08516a39 in Editor::add_audio_region_to_region_display
(this=0x8c38ab0, region=@0xbfdd76a4) at
#gtk2_ardour/editor_region_list.cc:118
0000005 0x08517d56 in Editor::redisplay_regions (this=0x8c38ab0) at
#gtk2_ardour/editor_region_list.cc:272
#6 0x08517f97 in Editor::region_hidden (this=0x8c38ab0, r=@0xbfdd775c) at
#gtk2_ardour/editor_region_list.cc:81
#7 0x08484537 in sigc::bound_mem_functor1<void, Editor,
#boost::shared_ptr<ARDOUR::Region> >::operator() (this=0x8e90b54,
#_A_a1=@0xbfdd7868)
    at libs/sigc++2/sigc++/functors/mem_fun.h:1838
0000008 0x08484585 in sigc::adaptor_functor<sigc::bound_mem_functor1<void,
Editor, boost::shared_ptr<ARDOUR::Region> >
#>::operator()<boost::shared_ptr<ARDOUR::Region> const&> (this=0x8e90b50,
#>_A_arg1=@0xbfdd7868) at libs/sigc++2/sigc++/adaptors/adaptor_trait.h:84
0000009 0x084845a9 in sigc::internal::slot_call1<sigc::bound_mem_functor1<void,
#Editor, boost::shared_ptr<ARDOUR::Region> >, void,
#boost::shared_ptr<ARDOUR::Region> >::call_it (rep=0x8e90b38,
#a_1=@0xbfdd7868) at libs/sigc++2/sigc++/functors/slot.h:137
0000010 0xb7db6920 in sigc::internal::signal_emit1<void,
#boost::shared_ptr<ARDOUR::Region>, sigc::nil_>::emit (impl=0x8e8e2d0,
#_A_a1=@0xbfdd7868)
    at libs/sigc++2/sigc++/signal.h:646
0000011 0xb7db69cf in sigc::signal1<void, boost::shared_ptr<ARDOUR::Region>,
sigc::nil_>::emit (this=0x8df01ec, _A_a1=@0xbfdd7868) at
#libs/sigc++2/sigc++/signal.h:1694
0000012 0xb7db69fa in sigc::signal1<void, boost::shared_ptr<ARDOUR::Region>,
#sigc::nil_>::operator() (this=0x8df01ec, _A_a1=@0xbfdd7868)
    at libs/sigc++2/sigc++/signal.h:1698
0000013 0xb7dd614f in ARDOUR::Session::region_changed (this=0x8df01c0,
what_changed=64, weak_region=@0xbfdd78a8) at libs/ardour/session.cc:2636
0000014 0xb7dfc860 in sigc::bound_mem_functor2<void, ARDOUR::Session,
ARDOUR::Change, boost::weak_ptr<ARDOUR::Region> >::operator()
#(this=0x8e08318, _A_a1=@0xbfdd79d4,
    _A_a2=@0x8e08324) at libs/sigc++2/sigc++/functors/mem_fun.h:1897
#15 0xb7dfc8c2 in sigc::adaptor_functor<sigc::bound_mem_functor2<void,
ARDOUR::Session, ARDOUR::Change, boost::weak_ptr<ARDOUR::Region> >
#>::operator()<ARDOUR::Change const&, boost::weak_ptr<ARDOUR::Region>&>
#>(this=0x8e08314, _A_arg1=@0xbfdd79d4, _A_arg2=@0x8e08324) at
#>libs/sigc++2/sigc++/adaptors/adaptor_trait.h:103
0000016 0xb7dfc8f9 in sigc::bind_functor<-1, sigc::bound_mem_functor2<void,
#ARDOUR::Session, ARDOUR::Change, boost::weak_ptr<ARDOUR::Region> >,
#boost::weak_ptr<ARDOUR::Region>, sigc::nil_, sigc::nil_, sigc::nil_,
#sigc::nil_, sigc::nil_, sigc::nil_>::operator()<ARDOUR::Change const&>
#(this=0x8e08310, _A_arg1=@0xbfdd79d4)
    at libs/sigc++2/sigc++/adaptors/bind.h:1122
#17 0xb7dfc92d in sigc::internal::slot_call1<sigc::bind_functor<-1,
sigc::bound_mem_functor2<void, ARDOUR::Session, ARDOUR::Change,
#boost::weak_ptr<ARDOUR::Region> >, boost::weak_ptr<ARDOUR::Region>,
sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_, sigc::nil_>,
#void, ARDOUR::Change>::call_it (rep=0x8e082f8, a_1=@0xbfdd79d4)
    at libs/sigc++2/sigc++/functors/slot.h:137
0000018 0x08486624 in sigc::internal::signal_emit1<void, ARDOUR::Change,
sigc::nil_>::emit (impl=0x8e082c8, _A_a1=@0xbfdd79d4) at
#libs/sigc++2/sigc++/signal.h:646
0000019 0x084866c5 in sigc::signal1<void, ARDOUR::Change, sigc::nil_>::emit
#(this=0x8e40244, _A_a1=@0xbfdd79d4) at libs/sigc++2/sigc++/signal.h:1694
0000020 0x084866e0 in sigc::signal1<void, ARDOUR::Change,
#sigc::nil_>::operator() (this=0x8e40244, _A_a1=@0xbfdd79d4) at
#libs/sigc++2/sigc++/signal.h:1698
0000021 0xb7db347e in ARDOUR::Region::send_change (this=0x8e40218,
#what_changed=64) at libs/ardour/region.cc:954
0000022 0xb7db3781 in ARDOUR::Region::set_hidden (this=0x8e40218, yn=true) at
#libs/ardour/region.cc:561
0000023 0x08514245 in Editor::hide_a_region (this=0x8c38ab0, r=@0xbfdd7a2c) at
#gtk2_ardour/editor_region_list.cc:575
#24 0x08484537 in sigc::bound_mem_functor1<void, Editor,
#boost::shared_ptr<ARDOUR::Region> >::operator() (this=0x9532bdc,
#_A_a1=@0xbfdd7b18)
    at libs/sigc++2/sigc++/functors/mem_fun.h:1838
0000025 0x08484585 in sigc::adaptor_functor<sigc::bound_mem_functor1<void,
Editor, boost::shared_ptr<ARDOUR::Region> >
#>::operator()<boost::shared_ptr<ARDOUR::Region> const&> (this=0x9532bd8,
#>_A_arg1=@0xbfdd7b18) at libs/sigc++2/sigc++/adaptors/adaptor_trait.h:84
0000026 0x084845a9 in sigc::internal::slot_call1<sigc::bound_mem_functor1<void,
#Editor, boost::shared_ptr<ARDOUR::Region> >, void,
#boost::shared_ptr<ARDOUR::Region> >::call_it (rep=0x9532bc0,
#a_1=@0xbfdd7b18) at libs/sigc++2/sigc++/functors/slot.h:137
0000027 0x08518483 in sigc::slot1<void, boost::shared_ptr<ARDOUR::Region>
#>::operator() (this=0xbfdd7b6c, _A_a1=@0xbfdd7b18) at
#>libs/sigc++2/sigc++/functors/slot.h:512
0000028 0x085143fc in Editor::region_list_selection_mapover (this=0x8c38ab0,
#sl=@0xbfdd7b6c) at gtk2_ardour/editor_region_list.cc:567
0000029 0x08514626 in Editor::hide_region_from_region_list (this=0x8c38ab0) at
#gtk2_ardour/editor_region_list.cc:594
0000030 0x084810a4 in sigc::bound_mem_functor0<void, Editor>::operator()
#(this=0x8cae3d4) at libs/sigc++2/sigc++/functors/mem_fun.h:1781
0000031 0x084810ba in sigc::adaptor_functor<sigc::bound_mem_functor0<void,
#Editor> >::operator() (this=0x8cae3d0) at
#libs/sigc++2/sigc++/adaptors/adaptor_trait.h:251
0000032 0x084810d6 in sigc::internal::slot_call0<sigc::bound_mem_functor0<void,
#Editor>, void>::call_it (rep=0x8cae3b8) at
#libs/sigc++2/sigc++/functors/slot.h:103
0000033 0x08365c92 in sigc::slot0<void>::operator() (this=0x8cae11c) at
#libs/sigc++2/sigc++/functors/slot.h:440
0000034 0xb6d736d5 in Glib::SignalProxyNormal::slot0_void_callback
#(self=0x8cae490, data=0x8cae118) at libs/glibmm2/glibmm/signalproxy.cc:95
0000035 0xb763ee1b in g_cclosure_marshal_VOID__VOID () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000036 0xb763198b in g_closure_invoke () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000037 0xb7642213 in g_signal_chain_from_overridden () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000038 0xb7643429 in g_signal_emit_valist () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000039 0xb76435d9 in g_signal_emit () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000040 0xb7285ca3 in _gtk_action_emit_activate () from
#/usr/share/qt4/lib/libgtk-x11-2.0.so.0
0000041 0xb7286b38 in gtk_action_activate () from
#/usr/share/qt4/lib/libgtk-x11-2.0.so.0
0000042 0xb763ee1b in g_cclosure_marshal_VOID__VOID () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000043 0xb763198b in g_closure_invoke () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000044 0xb7641f2d in g_signal_chain_from_overridden () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000045 0xb7643429 in g_signal_emit_valist () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000046 0xb76435d9 in g_signal_emit () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000047 0xb744f042 in gtk_widget_activate () from
#/usr/share/qt4/lib/libgtk-x11-2.0.so.0
0000048 0xb736d262 in gtk_menu_shell_activate_item () from
#/usr/share/qt4/lib/libgtk-x11-2.0.so.0
0000049 0xb736e810 in gtk_menu_shell_append () from
#/usr/share/qt4/lib/libgtk-x11-2.0.so.0
0000050 0xb7362d3f in gtk_menu_attach () from
#/usr/share/qt4/lib/libgtk-x11-2.0.so.0
0000051 0xb7361250 in _gtk_marshal_BOOLEAN__BOXED () from
#/usr/share/qt4/lib/libgtk-x11-2.0.so.0
0000052 0xb762ff49 in g_value_set_boxed () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000053 0xb763198b in g_closure_invoke () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000054 0xb764256f in g_signal_chain_from_overridden () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000055 0xb7643208 in g_signal_emit_valist () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000056 0xb76435d9 in g_signal_emit () from
#/usr/share/qt4/lib/libgobject-2.0.so.0
0000057 0xb744af64 in gtk_widget_get_default_style () from
#/usr/share/qt4/lib/libgtk-x11-2.0.so.0
0000058 0xb735abd3 in gtk_propagate_event () from
#/usr/share/qt4/lib/libgtk-x11-2.0.so.0
0000059 0xb735be07 in gtk_main_do_event () from
#/usr/share/qt4/lib/libgtk-x11-2.0.so.0
0000060 0xb71f4eea in _gdk_events_init () from
#/usr/share/qt4/lib/libgdk-x11-2.0.so.0
0000061 0xb75b5731 in g_main_context_dispatch () from
#/usr/share/qt4/lib/libglib-2.0.so.0
0000062 0xb75b87a6 in g_main_context_check () from
#/usr/share/qt4/lib/libglib-2.0.so.0
0000063 0xb75b8b67 in g_main_loop_run () from
#/usr/share/qt4/lib/libglib-2.0.so.0
0000064 0xb735c281 in gtk_main () from /usr/share/qt4/lib/libgtk-x11-2.0.so.0
0000065 0xb7837e49 in Gtk::Main::run_impl (this=0x885aa08) at
#libs/gtkmm2/gtk/gtkmm/main.cc:503
0000066 0xb7837c56 in Gtk::Main::run () at libs/gtkmm2/gtk/gtkmm/main.cc:450
0000067 0xb7abaeb7 in Gtkmm2ext::UI::run (this=0x88579f0,
#old_receiver=@0x88368a8) at libs/gtkmm2ext/gtk_ui.cc:216
0000068 0x085bd565 in main (argc=1, argv=0xbfdd8dc4) at gtk2_ardour/main.cc:296
.........

cheers,
doc

paul

2007-05-21 14:04

administrator   ~0004002

fixed in 2.0-ongoing.

Issue History

Date Modified Username Field Change
2007-05-21 11:25 Hollunder New Issue
2007-05-21 11:50 nowhiskey Note Added: 0004001
2007-05-21 14:04 paul Status new => resolved
2007-05-21 14:04 paul Resolution open => fixed
2007-05-21 14:04 paul Assigned To => paul
2007-05-21 14:04 paul Note Added: 0004002
2007-05-22 11:22 Hollunder Status resolved => closed