summaryrefslogtreecommitdiff
path: root/libs/ardour/audiofilesource.cc
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2009-11-30 13:16:38 +0000
committerPaul Davis <paul@linuxaudiosystems.com>2009-11-30 13:16:38 +0000
commitacdc88f279760443dc7397290e9c4752af5b23c9 (patch)
tree014adddabb815ab9d906f3bda1a2b2c78128e0ca /libs/ardour/audiofilesource.cc
parent395efbc32d02fda70df50079bedee35c355b3b37 (diff)
attempt to remove confusion and errors caused by unclear semantics of _is_embedded for FileSources; member renamed _within_session, and is now ALWAYS determined by the _path of the FileSource, never by the creator
git-svn-id: svn://localhost/ardour2/branches/3.0@6213 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs/ardour/audiofilesource.cc')
-rw-r--r--libs/ardour/audiofilesource.cc23
1 files changed, 11 insertions, 12 deletions
diff --git a/libs/ardour/audiofilesource.cc b/libs/ardour/audiofilesource.cc
index f2f09b71fc..b840c3a7c9 100644
--- a/libs/ardour/audiofilesource.cc
+++ b/libs/ardour/audiofilesource.cc
@@ -92,31 +92,30 @@ struct SizedSampleBuffer {
Glib::StaticPrivate<SizedSampleBuffer> thread_interleave_buffer = GLIBMM_STATIC_PRIVATE_INIT;
/** Constructor used for existing internal-to-session files. */
-AudioFileSource::AudioFileSource (Session& s, const ustring& path, bool embedded, Source::Flag flags)
+AudioFileSource::AudioFileSource (Session& s, const ustring& path, Source::Flag flags)
: Source (s, DataType::AUDIO, path, flags)
, AudioSource (s, path)
- , FileSource (s, DataType::AUDIO, path, embedded, flags)
+ , FileSource (s, DataType::AUDIO, path, flags)
{
- if (init (path, true)) {
+ if (init (_path, true)) {
throw failed_constructor ();
}
+
}
/** Constructor used for new internal-to-session files. */
-AudioFileSource::AudioFileSource (Session& s, const ustring& path, bool embedded, Source::Flag flags,
+AudioFileSource::AudioFileSource (Session& s, const ustring& path, Source::Flag flags,
SampleFormat /*samp_format*/, HeaderFormat /*hdr_format*/)
: Source (s, DataType::AUDIO, path, flags)
, AudioSource (s, path)
- , FileSource (s, DataType::AUDIO, path, embedded, flags)
+ , FileSource (s, DataType::AUDIO, path, flags)
{
- _is_embedded = false;
-
- if (init (path, false)) {
+ if (init (_path, false)) {
throw failed_constructor ();
}
}
-/** Constructor used for existing internal-to-session files. File must exist. */
+/** Constructor used for existing internal-to-session files via XML. File must exist. */
AudioFileSource::AudioFileSource (Session& s, const XMLNode& node, bool must_exist)
: Source (s, node)
, AudioSource (s, node)
@@ -125,8 +124,8 @@ AudioFileSource::AudioFileSource (Session& s, const XMLNode& node, bool must_exi
if (set_state (node, Stateful::loading_state_version)) {
throw failed_constructor ();
}
-
- if (init (_name, must_exist)) {
+
+ if (init (_path, must_exist)) {
throw failed_constructor ();
}
}
@@ -170,7 +169,7 @@ AudioFileSource::find_broken_peakfile (ustring peak_path, ustring audio_path)
if (Glib::file_test (str, Glib::FILE_TEST_EXISTS)) {
- if (is_embedded()) {
+ if (!within_session()) {
/* it would be nice to rename it but the nature of
the bug means that we can't reliably use it.