diff --git a/SConstruct b/SConstruct
index 06b0884f54..1867a3a258 100644
--- a/SConstruct
+++ b/SConstruct
@@ -401,11 +401,9 @@ env.Append (BUILDERS = {'Tarball' : tarball_bld})
def pushEnvironment(context):
if os.environ.has_key('PATH'):
- context.Append(PATH = os.environ['PATH'])
context['ENV']['PATH'] = os.environ['PATH']
if os.environ.has_key('PKG_CONFIG_PATH'):
- context.Append(PKG_CONFIG_PATH = os.environ['PKG_CONFIG_PATH'])
context['ENV']['PKG_CONFIG_PATH'] = os.environ['PKG_CONFIG_PATH']
if os.environ.has_key('CC'):
@@ -434,7 +432,7 @@ deps = \
'raptor' : '1.4.2',
'lrdf' : '0.4.0',
'jack' : '0.109.0',
- 'libgnomecanvas-2.0' : '2.0',
+ 'libgnomecanvas-2.0' : '2.0'
}
def DependenciesRequiredMessage():
diff --git a/ardour.rc.in b/ardour.rc.in
index 6b6c29908c..4f7c56510d 100644
--- a/ardour.rc.in
+++ b/ardour.rc.in
@@ -20,7 +20,7 @@
-
+
@@ -38,9 +38,9 @@
-
+
-
+
diff --git a/gtk2_ardour/splash.cc b/gtk2_ardour/splash.cc
index 1ed991f74b..28f7e4c4b0 100644
--- a/gtk2_ardour/splash.cc
+++ b/gtk2_ardour/splash.cc
@@ -66,7 +66,7 @@ void
Splash::on_realize ()
{
Window::on_realize ();
- get_window()->set_decorations (Gdk::WMDecoration(0));
+ get_window()->set_override_redirect(true);
layout->set_font_description (get_style()->get_font());
}
diff --git a/libs/ardour/ardour/audiofilesource.h b/libs/ardour/ardour/audiofilesource.h
index eb156075b9..68ee510ed0 100644
--- a/libs/ardour/ardour/audiofilesource.h
+++ b/libs/ardour/ardour/audiofilesource.h
@@ -125,6 +125,9 @@ class AudioFileSource : public AudioSource {
bool can_be_analysed() const { return _length > 0; }
+ static bool find (Glib::ustring path, bool must_exist, bool embedded, bool& is_new, uint16_t& chan,
+ Glib::ustring& found_path, std::string& found_name);
+
protected:
/* constructor to be called for existing external-to-session files */
@@ -164,12 +167,11 @@ class AudioFileSource : public AudioSource {
virtual void set_timeline_position (int64_t pos);
virtual void set_header_timeline_position () = 0;
- bool find (Glib::ustring& path, bool must_exist, bool& is_new, uint16_t& chan);
bool removable() const;
bool writable() const { return _flags & Writable; }
static Sample* get_interleave_buffer (nframes_t size);
-
+
private:
Glib::ustring old_peak_path (Glib::ustring audio_path);
Glib::ustring broken_peak_path (Glib::ustring audio_path);
diff --git a/libs/ardour/ardour/configuration_vars.h b/libs/ardour/ardour/configuration_vars.h
index 22ec734ba2..2a81541e92 100644
--- a/libs/ardour/ardour/configuration_vars.h
+++ b/libs/ardour/ardour/configuration_vars.h
@@ -159,7 +159,7 @@ CONFIG_VARIABLE (bool, periodic_safety_backups, "periodic-safety-backups", true)
CONFIG_VARIABLE (uint32_t, periodic_safety_backup_interval, "periodic-safety-backup-interval", 120)
CONFIG_VARIABLE (float, automation_interval, "automation-interval", 50)
CONFIG_VARIABLE (bool, sync_all_route_ordering, "sync-all-route-ordering", true)
-CONFIG_VARIABLE (bool, only_copy_imported_files, "only-copy-imported-files", true)
+CONFIG_VARIABLE (bool, only_copy_imported_files, "only-copy-imported-files", false)
CONFIG_VARIABLE (bool, new_plugins_active, "new-plugins-active", true)
CONFIG_VARIABLE (std::string, keyboard_layout, "keyboard-layout", "ansi")
CONFIG_VARIABLE (std::string, default_bindings, "default-bindings", "ardour")
diff --git a/libs/ardour/ardour/port.h b/libs/ardour/ardour/port.h
index 6f97f035f5..9cf14d91d9 100644
--- a/libs/ardour/ardour/port.h
+++ b/libs/ardour/ardour/port.h
@@ -33,7 +33,7 @@ class AudioEngine;
class Port : public sigc::trackable {
public:
virtual ~Port() {
- // Port is an opage pointer, so should be be desallocated ??
+ // Port is an opaque pointer, so should be be deallocated ??
}
static nframes_t port_offset() { return _port_offset; }
@@ -179,7 +179,7 @@ class Port : public sigc::trackable {
Port (jack_port_t *port);
void reset ();
- /* engine isn't supposed to below here */
+ /* engine isn't supposed to use anything below here */
/* cache these 3 from JACK so that we can
access them for reconnecting.
diff --git a/libs/ardour/ardour/route.h b/libs/ardour/ardour/route.h
index 03dcc597a2..5e7cb8fc5f 100644
--- a/libs/ardour/ardour/route.h
+++ b/libs/ardour/ardour/route.h
@@ -79,7 +79,7 @@ class Route : public IO
std::string comment() { return _comment; }
void set_comment (std::string str, void *src);
- int set_name (string str, void *src);
+ virtual int set_name (string str, void *src);
long order_key (const char* name) const;
void set_order_key (const char* name, long n);
diff --git a/libs/ardour/audiofilesource.cc b/libs/ardour/audiofilesource.cc
index 919e9587fe..ac5a6e7b8c 100644
--- a/libs/ardour/audiofilesource.cc
+++ b/libs/ardour/audiofilesource.cc
@@ -154,7 +154,7 @@ AudioFileSource::init (ustring pathstr, bool must_exist)
timeline_position = 0;
_peaks_built = false;
- if (!find (pathstr, must_exist, file_is_new, _channel)) {
+ if (!find (pathstr, must_exist, is_embedded(), file_is_new, _channel, _path, _name)) {
throw non_existent_source ();
}
@@ -439,7 +439,9 @@ AudioFileSource::move_to_trash (const ustring& trash_dir_name)
}
bool
-AudioFileSource::find (ustring& pathstr, bool must_exist, bool& isnew, uint16_t& chan)
+AudioFileSource::find (ustring pathstr, bool must_exist, bool embedded,
+ bool& isnew, uint16_t& chan,
+ ustring& path, std::string& name)
{
ustring::size_type pos;
bool ret = false;
@@ -541,8 +543,8 @@ AudioFileSource::find (ustring& pathstr, bool must_exist, bool& isnew, uint16_t&
}
}
- _name = pathstr;
- _path = keeppath;
+ name = pathstr;
+ path = keeppath;
ret = true;
} else {
@@ -561,12 +563,12 @@ AudioFileSource::find (ustring& pathstr, bool must_exist, bool& isnew, uint16_t&
}
}
- _path = pathstr;
+ path = pathstr;
- if (is_embedded()) {
- _name = pathstr;
+ if (embedded) {
+ name = pathstr;
} else {
- _name = pathstr.substr (pathstr.find_last_of ('/') + 1);
+ name = pathstr.substr (pathstr.find_last_of ('/') + 1);
}
if (!Glib::file_test (pathstr, Glib::FILE_TEST_EXISTS|Glib::FILE_TEST_IS_REGULAR)) {
@@ -574,12 +576,12 @@ AudioFileSource::find (ustring& pathstr, bool must_exist, bool& isnew, uint16_t&
/* file does not exist or we cannot read it */
if (must_exist) {
- error << string_compose(_("Filesource: cannot find required file (%1): %2"), _path, strerror (errno)) << endmsg;
+ error << string_compose(_("Filesource: cannot find required file (%1): %2"), pathstr, strerror (errno)) << endmsg;
goto out;
}
if (errno != ENOENT) {
- error << string_compose(_("Filesource: cannot check for existing file (%1): %2"), _path, strerror (errno)) << endmsg;
+ error << string_compose(_("Filesource: cannot check for existing file (%1): %2"), pathstr, strerror (errno)) << endmsg;
goto out;
}
diff --git a/libs/ardour/session_state.cc b/libs/ardour/session_state.cc
index f8e12e07b8..6e13e3977f 100644
--- a/libs/ardour/session_state.cc
+++ b/libs/ardour/session_state.cc
@@ -2626,12 +2626,17 @@ Session::find_all_sources (string path, set& result)
continue;
}
- string path = _path; /* /-terminated */
- path += sound_dir_name;
- path += '/';
- path += prop->value();
+ /* now we have to actually find the file */
- result.insert (path);
+ bool is_new;
+ uint16_t chan;
+ Glib::ustring path;
+ std::string name;
+
+ if (AudioFileSource::find (prop->value(), true, false, is_new, chan, path, name)) {
+ cerr << "Got " << path << " from XML source with prop = " << prop->value() << endl;
+ result.insert (path);
+ }
}
return 0;
@@ -2819,6 +2824,8 @@ Session::cleanup_sources (Session::cleanup_report& rep)
realpath(spath.c_str(), tmppath1);
realpath((*i).c_str(), tmppath2);
+ cerr << "comparing " << tmppath1 << " and " << tmppath2 << endl;
+
if (strcmp(tmppath1, tmppath2) == 0) {
used = true;
break;
diff --git a/libs/ardour/source_factory.cc b/libs/ardour/source_factory.cc
index 9064faa56d..a0d0edc333 100644
--- a/libs/ardour/source_factory.cc
+++ b/libs/ardour/source_factory.cc
@@ -129,7 +129,6 @@ boost::shared_ptr