summaryrefslogtreecommitdiff
path: root/libs/ardour/midi_source.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2014-04-04 15:26:44 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2014-04-04 15:26:44 -0400
commitfc691cb3ba6c1a49b1b71f1169097bee0292f3cc (patch)
treea348af2807bb9727ccdf050722a99f2b318c0ece /libs/ardour/midi_source.cc
parent3e7fad52f5035325be02b88baa00be6210e05fe9 (diff)
after cloning a MIDI region, mark the source file as non-removable. Fixes reports about missing MIDI files on the forums and IRC
Diffstat (limited to 'libs/ardour/midi_source.cc')
-rw-r--r--libs/ardour/midi_source.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/libs/ardour/midi_source.cc b/libs/ardour/midi_source.cc
index 1887b74302..8034634ba7 100644
--- a/libs/ardour/midi_source.cc
+++ b/libs/ardour/midi_source.cc
@@ -38,6 +38,7 @@
#include "ardour/midi_model.h"
#include "ardour/midi_state_tracker.h"
#include "ardour/midi_source.h"
+#include "ardour/file_source.h"
#include "ardour/session.h"
#include "ardour/session_directory.h"
#include "ardour/source_factory.h"
@@ -380,6 +381,10 @@ MidiSource::clone (const string& path, Evoral::MusicalTime begin, Evoral::Musica
} else {
newsrc->set_model (_model);
}
+
+ /* this file is not removable (but since it is MIDI, it is mutable) */
+
+ boost::dynamic_pointer_cast<FileSource> (newsrc)->prevent_deletion ();
return newsrc;
}