summaryrefslogtreecommitdiff
path: root/src/wx/audio_dialog.cc
diff options
context:
space:
mode:
authorCarl Hetherington <cth@carlh.net>2019-01-08 23:34:04 +0000
committerCarl Hetherington <cth@carlh.net>2019-01-08 23:34:04 +0000
commit4df42c81390ed61aecbcc5bf0ad380937c26eaef (patch)
treef8cc92b821e668153300004e88405adb05566ba4 /src/wx/audio_dialog.cc
parent3a323ff8e8921c737f6d250a744ba5f13ad2e255 (diff)
Make sure audio analysis is re-run even if there's an existing job for the same playlist (but with different settings) (fixed #1257).
Diffstat (limited to 'src/wx/audio_dialog.cc')
-rw-r--r--src/wx/audio_dialog.cc7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/wx/audio_dialog.cc b/src/wx/audio_dialog.cc
index 81687ca80..f3f7c1f8c 100644
--- a/src/wx/audio_dialog.cc
+++ b/src/wx/audio_dialog.cc
@@ -182,6 +182,13 @@ AudioDialog::try_to_load_analysis ()
if (!boost::filesystem::exists (path)) {
_plot->set_analysis (shared_ptr<AudioAnalysis> ());
_analysis.reset ();
+
+ BOOST_FOREACH (shared_ptr<Job> i, JobManager::instance()->get()) {
+ if (dynamic_pointer_cast<AnalyseAudioJob>(i)) {
+ i->cancel ();
+ }
+ }
+
JobManager::instance()->analyse_audio (
film, _playlist, !static_cast<bool>(check), _analysis_finished_connection, bind (&AudioDialog::analysis_finished, this)
);