Mercurial > hg > svapp
comparison align/Align.cpp @ 773:699b5b130ea2 pitch-align
Fixes to aligner destruction sequence when re-aligning during alignment; hide debug output behind a flag
author | Chris Cannam |
---|---|
date | Mon, 01 Jun 2020 17:13:09 +0100 |
parents | 1d6cca5a5621 |
children | 32e66fcc4cb7 |
comparison
equal
deleted
inserted
replaced
772:8280f7a363d1 | 773:699b5b130ea2 |
---|---|
100 QString additionalData; | 100 QString additionalData; |
101 AlignmentType type = getAlignmentPreference(additionalData); | 101 AlignmentType type = getAlignmentPreference(additionalData); |
102 | 102 |
103 std::shared_ptr<Aligner> aligner; | 103 std::shared_ptr<Aligner> aligner; |
104 | 104 |
105 if (m_aligners.find(toAlign) != m_aligners.end()) { | |
106 // We don't want a callback on removeAligner to happen during | |
107 // our own call to addAligner! Disconnect and delete the old | |
108 // aligner first | |
109 disconnect(m_aligners[toAlign].get(), nullptr, this, nullptr); | |
110 m_aligners.erase(toAlign); | |
111 } | |
112 | |
105 { | 113 { |
106 // Replace the aligner with a new one. This also stops any | 114 // Replace the aligner with a new one. This also stops any |
107 // previously-running alignment, when the old entry is | 115 // previously-running alignment, when the old entry is |
108 // replaced and its aligner destroyed. | 116 // replaced and its aligner destroyed. |
109 | 117 |