Fix for segfault on autoscroll (especially when dragging regions).
git-svn-id: svn://localhost/ardour2/trunk@967 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
c8f9f3eee8
commit
082c4570a1
|
@ -248,6 +248,7 @@ Editor::Editor (AudioEngine& eng)
|
||||||
bbt_beat_subdivision = 4;
|
bbt_beat_subdivision = 4;
|
||||||
canvas_width = 0;
|
canvas_width = 0;
|
||||||
canvas_height = 0;
|
canvas_height = 0;
|
||||||
|
autoscroll_active = false;
|
||||||
autoscroll_timeout_tag = -1;
|
autoscroll_timeout_tag = -1;
|
||||||
interthread_progress_window = 0;
|
interthread_progress_window = 0;
|
||||||
|
|
||||||
|
|
|
@ -1498,6 +1498,7 @@ class Editor : public PublicEditor
|
||||||
|
|
||||||
/* autoscrolling */
|
/* autoscrolling */
|
||||||
|
|
||||||
|
bool autoscroll_active;
|
||||||
int autoscroll_timeout_tag;
|
int autoscroll_timeout_tag;
|
||||||
int autoscroll_direction;
|
int autoscroll_direction;
|
||||||
uint32_t autoscroll_cnt;
|
uint32_t autoscroll_cnt;
|
||||||
|
|
|
@ -630,12 +630,13 @@ Editor::autoscroll_canvas ()
|
||||||
void
|
void
|
||||||
Editor::start_canvas_autoscroll (int dir)
|
Editor::start_canvas_autoscroll (int dir)
|
||||||
{
|
{
|
||||||
if (!session) {
|
if (!session || autoscroll_active) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
stop_canvas_autoscroll ();
|
stop_canvas_autoscroll ();
|
||||||
|
|
||||||
|
autoscroll_active = true;
|
||||||
autoscroll_direction = dir;
|
autoscroll_direction = dir;
|
||||||
autoscroll_distance = (nframes_t) floor (current_page_frames()/50.0);
|
autoscroll_distance = (nframes_t) floor (current_page_frames()/50.0);
|
||||||
autoscroll_cnt = 0;
|
autoscroll_cnt = 0;
|
||||||
|
@ -652,6 +653,8 @@ Editor::stop_canvas_autoscroll ()
|
||||||
g_source_remove (autoscroll_timeout_tag);
|
g_source_remove (autoscroll_timeout_tag);
|
||||||
autoscroll_timeout_tag = -1;
|
autoscroll_timeout_tag = -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
autoscroll_active = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
gint
|
gint
|
||||||
|
|
Loading…
Reference in New Issue
Block a user