fix for region-drag to the dropzone (#8672)
The DraggingView's time_axis_view (index) is set to the size of _time_axis_views in ::motion() near line 1149. This makes it invalid as index into the vector.
This commit is contained in:
parent
9e77d9dd50
commit
8cb09ab2cf
@ -1467,14 +1467,20 @@ RegionMoveDrag::finished (GdkEvent* ev, bool movement_occurred)
|
|||||||
bool const changed_position = (_last_position.sample != _primary->region()->position());
|
bool const changed_position = (_last_position.sample != _primary->region()->position());
|
||||||
bool changed_tracks;
|
bool changed_tracks;
|
||||||
|
|
||||||
if (_views.front().time_axis_view < 0) {
|
if (_views.front().time_axis_view == _time_axis_views.size()) {
|
||||||
if (&_views.front().view->get_time_axis_view()) {
|
/* in the drop zone */
|
||||||
changed_tracks = true;
|
changed_tracks = true;
|
||||||
} else {
|
|
||||||
changed_tracks = false;
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
changed_tracks = (_time_axis_views[_views.front().time_axis_view] != &_views.front().view->get_time_axis_view());
|
|
||||||
|
if (_views.front().time_axis_view < 0) {
|
||||||
|
if (&_views.front().view->get_time_axis_view()) {
|
||||||
|
changed_tracks = true;
|
||||||
|
} else {
|
||||||
|
changed_tracks = false;
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
changed_tracks = (_time_axis_views[_views.front().time_axis_view] != &_views.front().view->get_time_axis_view());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (_copy) {
|
if (_copy) {
|
||||||
|
Loading…
Reference in New Issue
Block a user