View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0006609 | ardour | bugs | public | 2015-09-27 17:41 | 2020-04-19 20:17 |
Reporter | colinf | Assigned To | timbyr | ||
Priority | normal | Severity | crash | Reproducibility | always |
Status | closed | Resolution | fixed | ||
Product Version | 4.X git (version in description) | ||||
Fixed in Version | 4.7 | ||||
Summary | 0006609: Right-click in active track name box crashes | ||||
Description | If the track name in the track header is active for editing (after a double-click), right-clicking in the text crashes ardour. | ||||
Additional Information | Backtrace attached. | ||||
Tags | No tags attached. | ||||
2015-09-27 17:41
|
track-name-right-click-bt (20,382 bytes)
colinf@colinf-laptop:~/src/ardour2/ardour/gtk2_ardour$ ./ardev bind txt domain [gtk2_ardour4] to /usr/local/share/ardour4/locale Ardour4.2.426 (built using 4.2-426-g2e6b455 and GCC version 4.7.2) ardour: [INFO]: Your system is configured to limit Ardour to only 4096 open files ardour: [INFO]: Loading system configuration file /home/colinf/src/ardour2/ardour/system_config Loading user configuration file /home/colinf/.config/ardour4/config CPU vendor: GenuineIntel ardour: [INFO]: CPU brand: Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz ardour: [INFO]: Using SSE optimized routines ardour: [INFO]: Loading default ui configuration file /home/colinf/src/ardour2/ardour/build/gtk2_ardour/default_ui_config ardour: [INFO]: Loading user ui configuration file /home/colinf/.config/ardour4/ui_config ardour: [INFO]: Loading colour file /home/colinf/src/ardour2/ardour/gtk2_ardour/dark.colors ardour: [INFO]: Loading ui configuration file /home/colinf/src/ardour2/ardour/build/gtk2_ardour/clearlooks.rc ardour: [INFO]: Loading ui configuration file /home/colinf/src/ardour2/ardour/build/gtk2_ardour/clearlooks.rc EngineControl::set_state Found 2 along /home/colinf/.config/ardour4/templates:./../templates:./../build/templates:./../gtk2_ardour/templates:./../build/gtk2_ardour/templates:./templates run dialog Error opening file /home/colinf/.lv2/README/manifest.ttl (Not a directory) lilv_world_load_file(): error: Error loading file `file:///home/colinf/.lv2/README/manifest.ttl' lilv_world_load_bundle(): error: Error reading file:///home/colinf/.lv2/README/manifest.ttl lilv_world_add_plugin(): error: Duplicate plugin <https://community.ardour.org/node/7596> lilv_world_add_plugin(): error: ... found in file:///home/colinf/src/ardour2/ardour/build/libs/LV2/reasonablesynth.lv2/ lilv_world_add_plugin(): error: ... and file:///usr/local/lib/lv2/reasonablesynth.lv2/ Scanning folders for bundled LV2s: ./../build/libs/LV2 Error opening file /home/colinf/.lv2/README/manifest.ttl (Not a directory) lilv_world_load_file(): error: Error loading file `file:///home/colinf/.lv2/README/manifest.ttl' lilv_world_load_bundle(): error: Error reading file:///home/colinf/.lv2/README/manifest.ttl lilv_world_add_plugin(): error: Duplicate plugin <https://community.ardour.org/node/7596> lilv_world_add_plugin(): error: ... found in file:///home/colinf/src/ardour2/ardour/build/libs/LV2/reasonablesynth.lv2/ lilv_world_add_plugin(): error: ... and file:///usr/local/lib/lv2/reasonablesynth.lv2/ Set cursor set to default Set buffering params to 262144|131072|10|10 Set buffering params to 262144|131072|10|10 Skip explicit buffer seconds, preset in use Skip explicit buffer seconds, preset in use Announcement is: (ardour-4.2.426:21474): Gtk-CRITICAL **: IA__gtk_widget_get_settings: assertion `GTK_IS_WIDGET (widget)' failed (ardour-4.2.426:21474): GLib-GObject-CRITICAL **: g_object_get: assertion `G_IS_OBJECT (object)' failed (ardour-4.2.426:21474): GLib-GObject-WARNING **: instance of invalid non-instantiatable type `(null)' (ardour-4.2.426:21474): Gtk-CRITICAL **: IA__gtk_widget_get_toplevel: assertion `GTK_IS_WIDGET (widget)' failed (ardour-4.2.426:21474): Gtk-CRITICAL **: IA__gtk_window_set_mnemonics_visible: assertion `GTK_IS_WINDOW (window)' failed Segmentation fault (core dumped) colinf@colinf-laptop:~/src/ardour2/ardour/gtk2_ardour$ ./ardbg GNU gdb (GDB) 7.4.1-debian Copyright (C) 2012 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-linux-gnu". For bug reporting instructions, please see: <http://www.gnu.org/software/gdb/bugs/>... Reading symbols from /home/colinf/src/ardour2/ardour/build/gtk2_ardour/ardour-4.2.426...done. (gdb) core-file core [New LWP 21474] [New LWP 21503] [New LWP 21504] [New LWP 21478] [New LWP 21479] [New LWP 21480] [New LWP 21481] [New LWP 21505] [New LWP 21482] [New LWP 21506] [New LWP 21477] [New LWP 21500] warning: Can't read pathname for load map: Input/output error. [Thread debugging using libthread_db enabled] Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". warning: no loadable sections found in added symbol-file system-supplied DSO at 0x7ffdc1bb3000 Core was generated by `./../build/gtk2_ardour/ardour-4.2.426'. Program terminated with signal 11, Segmentation fault. #0 0x00007f9d128c433b in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 (gdb) thread apply all bt Thread 12 (Thread 0x7f9cee538700 (LWP 21500)): #0 0x00007f9d0ed4891d in nanosleep () at ../sysdeps/unix/syscall-template.S:82 #1 0x00007f9d1322a542 in g_usleep () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f9d0038bf72 in ARDOUR::DummyAudioBackend::main_process_thread (this=0x20403b0) at ../libs/backends/dummy/dummy_audiobackend.cc:1277 #3 0x00007f9d00388665 in pthread_process (arg=0x20403b0) at ../libs/backends/dummy/dummy_audiobackend.cc:417 #4 0x00007f9d0ed40b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 #5 0x00007f9d0c18595d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #6 0x0000000000000000 in ?? () Thread 11 (Thread 0x7f9d04b9d700 (LWP 21477)): #0 0x00007f9d0ed4891d in nanosleep () at ../sysdeps/unix/syscall-template.S:82 #1 0x00007f9d1322a542 in g_usleep () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x0000000000f6ec55 in gui_event_loop (ptr=0x0) at ../gtk2_ardour/linux_vst_gui_support.cc:476 #3 0x00007f9d0ed40b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 #4 0x00007f9d0c18595d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #5 0x0000000000000000 in ?? () Thread 10 (Thread 0x7f9ced536700 (LWP 21506)): #0 0x00007f9d0ed4891d in nanosleep () at ../sysdeps/unix/syscall-template.S:82 #1 0x00007f9d1322a542 in g_usleep () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f9d156d7a28 in ARDOUR::AutomationWatch::thread (this=0x7f9cfc58d770) at ../libs/ardour/automation_watch.cc:153 #3 0x00007f9d156daf2b in boost::_mfi::mf0<void, ARDOUR::AutomationWatch>::operator() (this=0x7f9cfcadcd70, p=0x7f9cfc58d770) at /usr/include/boost/bind/mem_fn_template.hpp:49 #4 0x00007f9d156dab86 in boost::_bi::list1<boost::_bi::value<ARDOUR::AutomationWatch*> >::operator()<boost::_mfi::mf0<void, ARDOUR::AutomationWatch>, boost::_bi::list0> ( this=0x7f9cfcadcd80, f=..., a=...) at /usr/include/boost/bind/bind.hpp:253 #5 0x00007f9d156da731 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, ARDOUR::AutomationWatch>, boost::_bi::list1<boost::_bi::value<ARDOUR::AutomationWatch*> > >::operator() ( this=0x7f9cfcadcd70) at /usr/include/boost/bind/bind_template.hpp:20 #6 0x00007f9d156da6bc in sigc::adaptor_functor<boost::_bi::bind_t<void, boost::_mfi::mf0<void, ARDOUR::AutomationWatch>, boost::_bi::list1<boost::_bi::value<ARDOUR::AutomationWatch*> > > >::operator() (this=0x7f9cfcadcd70) at /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:251 #7 0x00007f9d156da20c in sigc::internal::slot_call0<boost::_bi::bind_t<void, boost::_mfi::mf0<void, ARDOUR::AutomationWatch>, boost::_bi::list1<boost::_bi::value<ARDOUR::AutomationWatch*> > >, void>::call_it (rep=0x7f9cfcadcd40) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:103 #8 0x00007f9d1394f87d in ?? () from /usr/lib/x86_64-linux-gnu/libglibmm-2.4.so.1 #9 0x00007f9d13228f45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #10 0x00007f9d0ed40b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 #11 0x00007f9d0c18595d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #12 0x0000000000000000 in ?? () Thread 9 (Thread 0x7f9d01adc700 (LWP 21482)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 #1 0x00007f9d1324269f in g_cond_wait () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f9d15684f80 in ARDOUR::AudioEngine::do_devicelist_update (this=0x7f9cfc129900) at ../libs/ardour/audioengine.cc:536 #3 0x00007f9d156912ef in boost::_mfi::mf0<void, ARDOUR::AudioEngine>::operator() (this=0x7f9cfc12a220, p=0x7f9cfc129900) at /usr/include/boost/bind/mem_fn_template.hpp:49 #4 0x00007f9d15690f32 in boost::_bi::list1<boost::_bi::value<ARDOUR::AudioEngine*> >::operator()<boost::_mfi::mf0<void, ARDOUR::AudioEngine>, boost::_bi::list0> ( this=0x7f9cfc12a230, f=..., a=...) at /usr/include/boost/bind/bind.hpp:253 #5 0x00007f9d15690893 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, ARDOUR::AudioEngine>, boost::_bi::list1<boost::_bi::value<ARDOUR::AudioEngine*> > >::operator() ( this=0x7f9cfc12a220) at /usr/include/boost/bind/bind_template.hpp:20 #6 0x00007f9d1569006a in sigc::adaptor_functor<boost::_bi::bind_t<void, boost::_mfi::mf0<void, ARDOUR::AudioEngine>, boost::_bi::list1<boost::_bi::value<ARDOUR::AudioEngine*> > > >::operator() (this=0x7f9cfc12a220) at /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:251 #7 0x00007f9d1568f270 in sigc::internal::slot_call0<boost::_bi::bind_t<void, boost::_mfi::mf0<void, ARDOUR::AudioEngine>, boost::_bi::list1<boost::_bi::value<ARDOUR::AudioEngine*> > >, void>::call_it (rep=0x7f9cfc12a1f0) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:103 #8 0x00007f9d1394f87d in ?? () from /usr/lib/x86_64-linux-gnu/libglibmm-2.4.so.1 #9 0x00007f9d13228f45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #10 0x00007f9d0ed40b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 #11 0x00007f9d0c18595d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #12 0x0000000000000000 in ?? () Thread 8 (Thread 0x7f9ceed39700 (LWP 21505)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 ---Type <return> to continue, or q <return> to quit--- #1 0x00007f9d15a4caa2 in ARDOUR::Session::emit_thread_run (this=0x28e51f0) at ../libs/ardour/session_process.cc:1313 #2 0x00007f9d15a4ca4c in ARDOUR::Session::emit_thread (arg=0x28e51f0) at ../libs/ardour/session_process.cc:1302 #3 0x00007f9d0ed40b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 #4 0x00007f9d0c18595d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #5 0x0000000000000000 in ?? () Thread 7 (Thread 0x7f9d022dd700 (LWP 21481)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 #1 0x00007f9d1324269f in g_cond_wait () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f9d15684d4d in ARDOUR::AudioEngine::do_reset_backend (this=0x7f9cfc129900) at ../libs/ardour/audioengine.cc:501 #3 0x00007f9d156912ef in boost::_mfi::mf0<void, ARDOUR::AudioEngine>::operator() (this=0x7f9cfc12a040, p=0x7f9cfc129900) at /usr/include/boost/bind/mem_fn_template.hpp:49 #4 0x00007f9d15690f32 in boost::_bi::list1<boost::_bi::value<ARDOUR::AudioEngine*> >::operator()<boost::_mfi::mf0<void, ARDOUR::AudioEngine>, boost::_bi::list0> ( this=0x7f9cfc12a050, f=..., a=...) at /usr/include/boost/bind/bind.hpp:253 #5 0x00007f9d15690893 in boost::_bi::bind_t<void, boost::_mfi::mf0<void, ARDOUR::AudioEngine>, boost::_bi::list1<boost::_bi::value<ARDOUR::AudioEngine*> > >::operator() ( this=0x7f9cfc12a040) at /usr/include/boost/bind/bind_template.hpp:20 #6 0x00007f9d1569006a in sigc::adaptor_functor<boost::_bi::bind_t<void, boost::_mfi::mf0<void, ARDOUR::AudioEngine>, boost::_bi::list1<boost::_bi::value<ARDOUR::AudioEngine*> > > >::operator() (this=0x7f9cfc12a040) at /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:251 #7 0x00007f9d1568f270 in sigc::internal::slot_call0<boost::_bi::bind_t<void, boost::_mfi::mf0<void, ARDOUR::AudioEngine>, boost::_bi::list1<boost::_bi::value<ARDOUR::AudioEngine*> > >, void>::call_it (rep=0x7f9cfc12a010) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:103 #8 0x00007f9d1394f87d in ?? () from /usr/lib/x86_64-linux-gnu/libglibmm-2.4.so.1 #9 0x00007f9d13228f45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #10 0x00007f9d0ed40b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 #11 0x00007f9d0c18595d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #12 0x0000000000000000 in ?? () Thread 6 (Thread 0x7f9d0339a700 (LWP 21480)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 #1 0x00007f9d1324269f in g_cond_wait () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f9d1563528d in ARDOUR::Analyser::work () at ../libs/ardour/analyser.cc:85 #3 0x00007f9d15635075 in analyser_work () at ../libs/ardour/analyser.cc:50 #4 0x0000000000c955bd in sigc::pointer_functor0<void>::operator() (this=0x1ee3898) at /usr/include/sigc++-2.0/sigc++/functors/ptr_fun.h:77 #5 0x0000000000c92c28 in sigc::adaptor_functor<sigc::pointer_functor0<void> >::operator() (this=0x1ee3890) at /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:251 #6 0x0000000000c8f4a5 in sigc::internal::slot_call0<sigc::pointer_functor0<void>, void>::call_it (rep=0x1ee3860) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:103 #7 0x00007f9d1394f87d in ?? () from /usr/lib/x86_64-linux-gnu/libglibmm-2.4.so.1 #8 0x00007f9d13228f45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #9 0x00007f9d0ed40b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 #10 0x00007f9d0c18595d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #11 0x0000000000000000 in ?? () Thread 5 (Thread 0x7f9d03b9b700 (LWP 21479)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 #1 0x00007f9d1324269f in g_cond_wait () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f9d15ab786e in peak_thread_work () at ../libs/ardour/source_factory.cc:71 #3 0x0000000000c955bd in sigc::pointer_functor0<void>::operator() (this=0x1ed62d8) at /usr/include/sigc++-2.0/sigc++/functors/ptr_fun.h:77 #4 0x0000000000c92c28 in sigc::adaptor_functor<sigc::pointer_functor0<void> >::operator() (this=0x1ed62d0) at /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:251 #5 0x0000000000c8f4a5 in sigc::internal::slot_call0<sigc::pointer_functor0<void>, void>::call_it (rep=0x1ed62a0) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:103 #6 0x00007f9d1394f87d in ?? () from /usr/lib/x86_64-linux-gnu/libglibmm-2.4.so.1 #7 0x00007f9d13228f45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #8 0x00007f9d0ed40b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 #9 0x00007f9d0c18595d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #10 0x0000000000000000 in ?? () Thread 4 (Thread 0x7f9d0439c700 (LWP 21478)): #0 pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:162 #1 0x00007f9d1324269f in g_cond_wait () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f9d15ab786e in peak_thread_work () at ../libs/ardour/source_factory.cc:71 #3 0x0000000000c955bd in sigc::pointer_functor0<void>::operator() (this=0x1ed6388) at /usr/include/sigc++-2.0/sigc++/functors/ptr_fun.h:77 #4 0x0000000000c92c28 in sigc::adaptor_functor<sigc::pointer_functor0<void> >::operator() (this=0x1ed6380) at /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:251 ---Type <return> to continue, or q <return> to quit--- #5 0x0000000000c8f4a5 in sigc::internal::slot_call0<sigc::pointer_functor0<void>, void>::call_it (rep=0x1ed6350) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:103 #6 0x00007f9d1394f87d in ?? () from /usr/lib/x86_64-linux-gnu/libglibmm-2.4.so.1 #7 0x00007f9d13228f45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #8 0x00007f9d0ed40b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 #9 0x00007f9d0c18595d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #10 0x0000000000000000 in ?? () Thread 3 (Thread 0x7f9cf053c700 (LWP 21504)): #0 0x00007f9d0c17ad13 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87 #1 0x00007f9d13206624 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #2 0x00007f9d13206a82 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #3 0x00007f9d142b104c in BaseUI::main_thread (this=0x2db0f30) at ../libs/pbd/base_ui.cc:86 #4 0x00007f9d142b4b38 in sigc::bound_mem_functor0<void, BaseUI>::operator() (this=0x2db1658) at /usr/include/sigc++-2.0/sigc++/functors/mem_fun.h:1787 #5 0x00007f9d142b488c in sigc::adaptor_functor<sigc::bound_mem_functor0<void, BaseUI> >::operator() (this=0x2db1650) at /usr/include/sigc++-2.0/sigc++/adaptors/adaptor_trait.h:251 #6 0x00007f9d142b43af in sigc::internal::slot_call0<sigc::bound_mem_functor0<void, BaseUI>, void>::call_it (rep=0x2db1620) at /usr/include/sigc++-2.0/sigc++/functors/slot.h:103 #7 0x00007f9d1394f87d in ?? () from /usr/lib/x86_64-linux-gnu/libglibmm-2.4.so.1 #8 0x00007f9d13228f45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #9 0x00007f9d0ed40b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 #10 0x00007f9d0c18595d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #11 0x0000000000000000 in ?? () Thread 2 (Thread 0x7f9ceda6b820 (LWP 21503)): #0 0x00007f9d0c17ad13 in *__GI___poll (fds=<optimized out>, nfds=<optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87 #1 0x00007f9d142c6bbd in CrossThreadChannel::poll_for_request (this=0x28ebb20) at ../libs/pbd/crossthread.posix.cc:73 #2 0x00007f9d142c6c2f in CrossThreadChannel::receive (this=0x28ebb20, msg=@0x7f9ceda6a64f: 0 '\000', wait=true) at ../libs/pbd/crossthread.posix.cc:94 #3 0x00007f9d156eb984 in ARDOUR::Butler::thread_work (this=0x28eba90) at ../libs/ardour/butler.cc:175 #4 0x00007f9d156eb6c1 in ARDOUR::Butler::_thread_work (arg=0x28eba90) at ../libs/ardour/butler.cc:156 #5 0x00007f9d142ddaaa in fake_thread_start (arg=0x2da0ca0) at ../libs/pbd/pthread_utils.cc:93 #6 0x00007f9d0ed40b50 in start_thread (arg=<optimized out>) at pthread_create.c:304 #7 0x00007f9d0c18595d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112 #8 0x0000000000000000 in ?? () Thread 1 (Thread 0x7f9d16e08960 (LWP 21474)): #0 0x00007f9d128c433b in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #1 0x00007f9d128bc230 in gtk_menu_popup () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #2 0x00007f9d1283d317 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #3 0x00007f9d129e22e1 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #4 0x00007f9d136ca6e0 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #5 0x00007f9d136db750 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #6 0x00007f9d136e36bc in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #7 0x00007f9d136e3d60 in g_signal_emit_by_name () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #8 0x00007f9d12914ef3 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #9 0x00007f9d1291883f in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #10 0x00007f9d128b2099 in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #11 0x00007f9d136ca6e0 in g_closure_invoke () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #12 0x00007f9d136db4d0 in ?? () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #13 0x00007f9d136e32db in g_signal_emit_valist () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #14 0x00007f9d136e3852 in g_signal_emit () from /usr/lib/x86_64-linux-gnu/libgobject-2.0.so.0 #15 0x00007f9d129c993e in ?? () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #16 0x00007f9d128b09bb in gtk_main_do_event () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #17 0x00007f9d1251d7ac in ?? () from /usr/lib/x86_64-linux-gnu/libgdk-x11-2.0.so.0 #18 0x00007f9d13206355 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #19 0x00007f9d13206688 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #20 0x00007f9d13206a82 in g_main_loop_run () from /lib/x86_64-linux-gnu/libglib-2.0.so.0 #21 0x00007f9d128af797 in gtk_main () from /usr/lib/x86_64-linux-gnu/libgtk-x11-2.0.so.0 #22 0x00007f9d163ee85b in Gtkmm2ext::UI::run (this=0x7f9cfc130af0, old_receiver=...) at ../libs/gtkmm2ext/gtk_ui.cc:280 #23 0x0000000000a7a97f in main (argc=1, argv=0x7ffdc1b4ece8) at ../gtk2_ardour/main.cc:389 (gdb) (gdb) |
|
I cannot reproduce this (neither git nor ardour.org binary) but I get those gtk errors/warnings when trying to reproduce: (ardour-4.2.393:9743): Gtk-CRITICAL **: IA__gtk_widget_get_settings: assertion 'GTK_IS_WIDGET (widget)' failed (ardour-4.2.393:9743): GLib-GObject-CRITICAL **: g_object_get: assertion 'G_IS_OBJECT (object)' failed |
|
Nightly 4.2.428 doesn't crash for me either. On right-clicking an active track name box, a menu momentarily pops up, and then immediately disappears, and the track name goes back to the 'inactive for editing' state. I think this is still a bug, albeit not as serious: in my opinion, right-clicking an active track name box should pop up a standard text context menu, as other text entries do. |
|
I dimly recall seeing those with ancient gtk. Right-click shows a copy/cut/paste context-text for the gtk entry. If the text-entry widget is removed while the menu is visible old gtk crashes. Meanwhile fixed in gtk upstream. |
|
So it's a gtk bug, not an ardour one? |
|
It's not a Gtk bug, problem is in TimeAxisView class. When right-clicking in the text entry, popup menu grab focus. Consequently, the "focus out" handler is called, destroy the text entry and replace it by the label name of the track. When menu pop up, it try to access to a widget no longer available. Attached a patch that fix this issue. |
|
fix-6609.patch (2,024 bytes)
diff --git a/gtk2_ardour/time_axis_view.cc b/gtk2_ardour/time_axis_view.cc index 4ad476b..65fb6e7 100644 --- a/gtk2_ardour/time_axis_view.cc +++ b/gtk2_ardour/time_axis_view.cc @@ -112,6 +112,7 @@ TimeAxisView::TimeAxisView (ARDOUR::Session* sess, PublicEditor& ed, TimeAxisVie , _preresize_cursor (0) , _have_preresize_cursor (false) , _ebox_release_can_act (true) + , by_popup_menu (false) { if (!controls_meters_size_group) { controls_meters_size_group = SizeGroup::create (SIZE_GROUP_HORIZONTAL); @@ -652,11 +653,21 @@ TimeAxisView::name_entry_key_release (GdkEventKey* ev) bool TimeAxisView::name_entry_focus_out (GdkEventFocus*) { + if (by_popup_menu) { + by_popup_menu = false; + return false; + } end_name_edit (RESPONSE_OK); return false; } void +TimeAxisView::name_entry_populate_popup (Gtk::Menu *) +{ + by_popup_menu = true; +} + +void TimeAxisView::begin_name_edit () { if (name_entry) { @@ -675,6 +686,7 @@ TimeAxisView::begin_name_edit () name_entry->signal_focus_out_event().connect (sigc::mem_fun (*this, &TimeAxisView::name_entry_focus_out)); name_entry->set_text (name_label.get_text()); name_entry->signal_activate().connect (sigc::bind (sigc::mem_fun (*this, &TimeAxisView::end_name_edit), RESPONSE_OK)); + name_entry->signal_populate_popup().connect (sigc::mem_fun (*this, &TimeAxisView::name_entry_populate_popup)); if (name_label.is_ancestor (name_hbox)) { name_hbox.remove (name_label); diff --git a/gtk2_ardour/time_axis_view.h b/gtk2_ardour/time_axis_view.h index 1eb1935..4be2380 100644 --- a/gtk2_ardour/time_axis_view.h +++ b/gtk2_ardour/time_axis_view.h @@ -257,9 +257,11 @@ class TimeAxisView : public virtual AxisView bool name_entry_key_release (GdkEventKey *ev); bool name_entry_key_press (GdkEventKey *ev); bool name_entry_focus_out (GdkEventFocus *ev); + void name_entry_populate_popup (Gtk::Menu *); Gtk::Entry* name_entry; bool ending_name_edit; + bool by_popup_menu; void begin_name_edit (); void end_name_edit (int); |
|
Ah, seems very plausible. I'll give the patch a try when I have a few moments later... |
|
Right, that mostly works... Right-clicking in an active track name edit box with the patch applies now pops up the standard GTK text context menu, and 'Cut/Copy/Paste' seem to work as expected. However, the appearance of the selected text reverts to that of unselected text when the menu is showing, so it's difficult to know exactly what 'Cut/Copy/Paste' will act upon. Also, 'Select All' doesn't appear to do anything. |
|
I can confirm the patch fixes the crash. If the context menu is going to be shown then I guess it should also work as expected but I think that could also be fixed later. The other option is to handle the button press event on the entry and not show the menu. |
|
The appearance of the selected text is a theme related problem. Attached a patch that fix that. |
|
fix-selected-text-not-visible-on-track-name-entry.patch (421 bytes)
diff --git a/gtk2_ardour/clearlooks.rc.in b/gtk2_ardour/clearlooks.rc.in index e2a0463..a8c94fb 100644 --- a/gtk2_ardour/clearlooks.rc.in +++ b/gtk2_ardour/clearlooks.rc.in @@ -811,7 +811,7 @@ style "track_name_display" = "medium_text" text[SELECTED] = @foreground base[NORMAL] = @bases - base[ACTIVE] = lighter(@bases) + base[ACTIVE] = @bg_selected base[SELECTED] = @bg_selected bg[NORMAL] = lighter(@bases) |
|
Ah, thank you, that all works fine for me now (with both patches applied). 'Select all' seems to work as expected now too: I must have just got confused by not being able to actually see the selection before. |
|
I tried with the additional fix-selected-text*.patch and it does not seem to be an improvement as now the text cursor is not displayed when editing the text. As the first patch fixes a crashing bug I think it is acceptable as is for the moment and if you could open a pull request on github with the fix-6609.patch then myself or one of the other developers will apply/merge it. |
|
Hmm even with the fix-selected-text*.patch I can see the cursor when editing the text... I'll submit a pull request for fix-6609 |
|
|
|
I uploaded a little video of what it looks like on my system with your second fix-selected-text* patch applied. As you may notice it is quite hard to see the location of the text cursor. Let me know if it looks different for you. |
|
Curious, my text entry background is black and cursor is blue. I tested it under gnome3(my daily desktop env), xfce4 and cinnamon. Did you change some color parameters in Preferences->Theme->Items (I don't know if this is relevant) I uploaded a little video too. |
|
|
|
I committed this first patch(via PR#202) to ardour master as revision 1fbe4253aa or nightly >= 4.6.331 The difference we are seeing in the behaviour of the second patch may be due to the library versions on my system. If the second patch works correctly with the official library versions(nightly build) then I'll commit it also. |
|
I just committed the second patch to ardour master as revision fc011e752a and will be in a nightly build >= 4.6.345 If you can confirm fix that would be appreciated and I'll mark bug as resolved, thanks. |
|
I think it's good now. There is one oddity, but I'm not sure whether it's a side-effect of the patch or just some anomalous behaviour I haven't noticed before: after the context menu has popped up, clicking outside the menu without selecting an item leaves the name entry box visible (as it should), but keyboard focus is no longer in the box, so the typed keys don't go into renaming the track as expected but are instead treated as normal keyboard shortcuts. Given that this whole mechanism is likely to be rendered obsolete when the tabbed branch is merged into master, it's maybe not worth worrying about, but I thought I ought to at least mention it here. |
|
Yes, your right that is a bit odd and not what I would expect. Perhaps it is something to keep in mind when implementing/testing a new implementation of track renaming if/when that happens. |
|
Issue has been closed automatically, by Trigger Close Plugin. Feel free to re-open with additional information if you think the issue is not resolved. |
Date Modified | Username | Field | Change |
---|---|---|---|
2015-09-27 17:41 | colinf | New Issue | |
2015-09-27 17:41 | colinf | File Added: track-name-right-click-bt | |
2015-09-28 10:39 | chaot | Note Added: 0017387 | |
2015-09-28 10:39 | chaot | Note Edited: 0017387 | |
2015-09-28 13:14 | colinf | Note Added: 0017393 | |
2015-09-28 21:42 | x42 | Note Added: 0017395 | |
2015-09-29 13:56 | colinf | Note Added: 0017399 | |
2016-01-15 03:33 | elgoun | Note Added: 0017788 | |
2016-01-15 03:34 | elgoun | File Added: fix-6609.patch | |
2016-01-15 10:49 | colinf | Note Added: 0017790 | |
2016-01-16 18:53 | colinf | Note Added: 0017800 | |
2016-02-02 02:42 | timbyr | Note Added: 0017863 | |
2016-02-02 02:42 | timbyr | Status | new => confirmed |
2016-02-02 10:04 | elgoun | Note Added: 0017867 | |
2016-02-02 10:07 | elgoun | File Added: fix-selected-text-not-visible-on-track-name-entry.patch | |
2016-02-02 16:35 | colinf | Note Added: 0017868 | |
2016-02-10 00:53 | timbyr | Note Added: 0017893 | |
2016-02-10 23:33 | elgoun | Note Added: 0017900 | |
2016-02-11 12:10 | timbyr | File Added: 6609-fix-selected-patch.webm | |
2016-02-11 12:12 | timbyr | Note Added: 0017909 | |
2016-02-11 12:51 | elgoun | Note Added: 0017910 | |
2016-02-11 12:52 | elgoun | File Added: ardour-6609-selected-text-and-cursor.webm | |
2016-02-13 03:26 | timbyr | Note Added: 0017927 | |
2016-02-14 01:26 | timbyr | Note Added: 0017930 | |
2016-02-14 01:26 | timbyr | Assigned To | => timbyr |
2016-02-14 01:26 | timbyr | Status | confirmed => feedback |
2016-02-14 01:35 | colinf | Note Added: 0017931 | |
2016-02-14 01:35 | colinf | Status | feedback => assigned |
2016-02-14 01:37 | colinf | Note Edited: 0017931 | |
2016-02-14 10:58 | timbyr | Note Added: 0017932 | |
2016-02-14 10:58 | timbyr | Status | assigned => resolved |
2016-02-14 10:58 | timbyr | Fixed in Version | => 4.7 |
2016-02-14 10:58 | timbyr | Resolution | open => fixed |
2020-04-19 20:17 | system | Note Added: 0023536 | |
2020-04-19 20:17 | system | Status | resolved => closed |