View Issue Details

IDProjectCategoryView StatusLast Update
0006556ardourbugspublic2016-02-22 03:28
Reporternapcode Assigned To 
PrioritynormalSeverityminorReproducibilityalways
Status confirmedResolutionopen 
Product Version4.7 
Summary0006556: Dragging an item "far right" results in ardour hanging
DescriptionUsing Ardour 4.2 on Archlinux x64

Steps to reproduce:
- Create a session with a MIDI track
- Zoom out as far as possible
- Draw a MIDI item
- Drag the midi item to the right screen border
-> Ardours GUI locks up and hangs for a long time (~30s)

Attaching GDB yields the info that most of the time seems to be spent around Timecode::timecode_to_frames_per_second(Timecode::TimecodeFormat)
Additional InformationCallstack:
#0 Timecode::timecode_to_frames_per_second (t=Timecode::timecode_30) at ../libs/timecode/src/time.cc:431
0000001 0x00007ffff6c5eae7 in ARDOUR::Session::timecode_frames_per_second (this=0x1c83600) at ../libs/ardour/session_time.cc:57
#2 0x00007ffff6c5ed28 in ARDOUR::Session::timecode_to_sample (this=0x1c83600, timecode=..., sample=@0x7fffffffca98: 0x79f6e9430800, use_offset=0x1, use_subframes=0x0)
    at ../libs/ardour/session_time.cc:104
#3 0x0000000000922f95 in Editor::metric_get_timecode (this=0x1d95b90, marks=std::vector of length 0, capacity 16, lower=228096000) at ../gtk2_ardour/editor_rulers.cc:996
0000004 0x000000000092700b in TimecodeMetric::get_marks (this=0x1e89bc0, marks=std::vector of length 0, capacity 16, lower=559872000, upper=4893696000, maxchars=0x32)
    at ../gtk2_ardour/editor_rulers.cc:70
0000005 0x00007ffff792a9bd in ArdourCanvas::Ruler::render (this=0x1e89c40, area=..., cr=...) at ../libs/canvas/ruler.cc:113
#6 0x00007ffff791154e in ArdourCanvas::Item::render_children (this=0x1e843d0, area=..., context=...) at ../libs/canvas/item.cc:800
#7 0x00007ffff7908ec1 in ArdourCanvas::Container::render (this=0x1e843d0, area=..., context=...) at ../libs/canvas/container.cc:43
0000008 0x00007ffff791154e in ArdourCanvas::Item::render_children (this=0x1e82530, area=..., context=...) at ../libs/canvas/item.cc:800
0000009 0x00007ffff7908ec1 in ArdourCanvas::Container::render (this=0x1e82530, area=..., context=...) at ../libs/canvas/container.cc:43
0000010 0x00007ffff792c084 in ArdourCanvas::ScrollGroup::render (this=0x1e82530, area=..., context=...) at ../libs/canvas/scroll_group.cc:67
0000011 0x00007ffff791154e in ArdourCanvas::Item::render_children (this=0x1e81ee0, area=..., context=...) at ../libs/canvas/item.cc:800
0000012 0x00007ffff7908ec1 in ArdourCanvas::Container::render (this=0x1e81ee0, area=..., context=...) at ../libs/canvas/container.cc:43
0000013 0x00007ffff78f6dfd in ArdourCanvas::Canvas::render (this=0x1e81ec8, area=..., context=...) at ../libs/canvas/canvas.cc:121
0000014 0x00007ffff78fa97d in ArdourCanvas::GtkCanvas::on_expose_event (this=0x1e81ec8, ev=0x7fffffffdd90) at ../libs/canvas/canvas.cc:814
#15 0x00007ffff1a352b4 in Gtk::Widget_Class::expose_event_callback(_GtkWidget*, _GdkEventExpose*) () from /usr/lib/libgtkmm-2.4.so.1
0000016 0x00007ffff394690f in ?? () from /usr/lib/libgtk-x11-2.0.so.0
#17 0x00007ffff457d2f5 in g_closure_invoke () from /usr/lib/libgobject-2.0.so.0
0000018 0x00007ffff458ef22 in ?? () from /usr/lib/libgobject-2.0.so.0
0000019 0x00007ffff4597195 in g_signal_emit_valist () from /usr/lib/libgobject-2.0.so.0
0000020 0x00007ffff45978ef in g_signal_emit () from /usr/lib/libgobject-2.0.so.0
0000021 0x00007ffff3a5dbac in ?? () from /usr/lib/libgtk-x11-2.0.so.0
0000022 0x00007ffff3945692 in gtk_main_do_event () from /usr/lib/libgtk-x11-2.0.so.0
0000023 0x00007ffff35a134f in ?? () from /usr/lib/libgdk-x11-2.0.so.0
#24 0x00007ffff35a12f5 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
0000025 0x00007ffff359de28 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
0000026 0x00007ffff359e758 in gdk_window_process_all_updates () from /usr/lib/libgdk-x11-2.0.so.0
0000027 0x00007ffff359e7b9 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
0000028 0x00007ffff357d577 in ?? () from /usr/lib/libgdk-x11-2.0.so.0
0000029 0x00007ffff42a890d in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
0000030 0x00007ffff42a8ce0 in ?? () from /usr/lib/libglib-2.0.so.0
0000031 0x00007ffff42a9002 in g_main_loop_run () from /usr/lib/libglib-2.0.so.0
0000032 0x00007ffff3944467 in gtk_main () from /usr/lib/libgtk-x11-2.0.so.0
0000033 0x00007ffff758b5b4 in Gtkmm2ext::UI::run (this=0x18345c0, old_receiver=...) at ../libs/gtkmm2ext/gtk_ui.cc:280
0000034 0x0000000000a7ae71 in main (argc=0x1, argv=0x7fffffffe3c8) at ../gtk2_ardour/main.cc:390
TagsNo tags attached.

Activities

napcode

2015-09-01 08:39

reporter   ~0017129

Forgot to add: GUI will become responsive again eventually. After the lockup period the item will not end up where it has been dragged to.

napcode

2015-09-01 20:52

reporter   ~0017131

Last edited: 2015-09-01 20:53

The current Mixbus 3.0-1268-g065d938 crashes or shows the same behaviour on Windows. Zooming out as far as possible seems to be enough to trigger this behaviour.

timbyr

2015-09-08 01:36

developer   ~0017156

I can confirm this is still an issue in ardour master@b08fd648

timbyr

2016-02-22 03:27

developer   ~0017990

I can confirm this issue still exists in 4.7

Issue History

Date Modified Username Field Change
2015-09-01 08:34 napcode New Issue
2015-09-01 08:39 napcode Note Added: 0017129
2015-09-01 20:52 napcode Note Added: 0017131
2015-09-01 20:53 napcode Note Edited: 0017131
2015-09-08 01:36 timbyr Note Added: 0017156
2015-09-08 01:36 timbyr Status new => confirmed
2016-02-22 03:27 timbyr Note Added: 0017990
2016-02-22 03:28 timbyr Product Version 4.1 => 4.7