timeline: fix double free on items

Who the hell wrote this? It's all wrong for no reason and makes no sense

Fixes #1222
This commit is contained in:
itsmattkc
2020-10-10 20:24:41 +11:00
parent 0d102defab
commit 221e0efb96
2 changed files with 3 additions and 10 deletions
@@ -68,10 +68,9 @@ TrackView::TrackView(Qt::Alignment vertical_alignment, QWidget *parent) :
void TrackView::ConnectTrackList(TrackList *list)
{
if (list_ != nullptr) {
foreach (TrackViewItem* item, items_) {
delete item;
foreach (TrackOutput* track, list_->GetTracks()) {
RemoveTrack(track);
}
items_.clear();
disconnect(list_, &TrackList::TrackHeightChanged, splitter_, &TrackViewSplitter::SetTrackHeight);
disconnect(list_, &TrackList::TrackAdded, this, &TrackView::InsertTrack);
@@ -82,11 +81,7 @@ void TrackView::ConnectTrackList(TrackList *list)
if (list_ != nullptr) {
foreach (TrackOutput* track, list_->GetTracks()) {
TrackViewItem* item = new TrackViewItem(track);
items_.append(item);
splitter_->Insert(track->Index(),
track->GetTrackHeightInPixels(),
item);
InsertTrack(track);
}
connect(list_, &TrackList::TrackHeightChanged, splitter_, &TrackViewSplitter::SetTrackHeight);
@@ -44,8 +44,6 @@ protected:
virtual void resizeEvent(QResizeEvent *e) override;
private:
QList<TrackViewItem*> items_;
TrackList* list_;
TrackViewSplitter* splitter_;