summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorTim Mayberry <mojofunk@gmail.com>2012-06-23 05:09:33 +0000
committerTim Mayberry <mojofunk@gmail.com>2012-06-23 05:09:33 +0000
commit6844eee3ae939ad737e0f8b40805460ba22705bc (patch)
tree9aa4c0a96b205d91f38e99452b270d1a77c93694 /libs
parent831251963c34587663419282f1cf98c691ea826d (diff)
Use std::string and Glib::build_filename in Session::load_state
git-svn-id: svn://localhost/ardour2/branches/3.0@12897 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs')
-rw-r--r--libs/ardour/session_state.cc38
1 files changed, 18 insertions, 20 deletions
diff --git a/libs/ardour/session_state.cc b/libs/ardour/session_state.cc
index 7474ce510e..20761eafc6 100644
--- a/libs/ardour/session_state.cc
+++ b/libs/ardour/session_state.cc
@@ -865,10 +865,10 @@ Session::load_state (string snapshot_name)
/* check for leftover pending state from a crashed capture attempt */
- sys::path xmlpath(_session_dir->root_path());
- xmlpath /= legalize_for_path (snapshot_name) + pending_suffix;
+ std::string xmlpath(_session_dir->root_path());
+ xmlpath = Glib::build_filename (xmlpath, legalize_for_path (snapshot_name) + pending_suffix);
- if (Glib::file_test (xmlpath.to_string(), Glib::FILE_TEST_EXISTS)) {
+ if (Glib::file_test (xmlpath, Glib::FILE_TEST_EXISTS)) {
/* there is pending state from a crashed capture attempt */
@@ -879,15 +879,13 @@ Session::load_state (string snapshot_name)
}
if (!state_was_pending) {
- xmlpath = _session_dir->root_path();
- xmlpath /= snapshot_name;
+ xmlpath = Glib::build_filename (_session_dir->root_path(), snapshot_name);
}
- if (!Glib::file_test (xmlpath.to_string(), Glib::FILE_TEST_EXISTS)) {
- xmlpath = _session_dir->root_path();
- xmlpath /= legalize_for_path (snapshot_name) + statefile_suffix;
- if (!Glib::file_test (xmlpath.to_string(), Glib::FILE_TEST_EXISTS)) {
- error << string_compose(_("%1: session state information file \"%2\" doesn't exist!"), _name, xmlpath.to_string()) << endmsg;
+ if (!Glib::file_test (xmlpath, Glib::FILE_TEST_EXISTS)) {
+ xmlpath = Glib::build_filename (_session_dir->root_path(), legalize_for_path (snapshot_name) + statefile_suffix);
+ if (!Glib::file_test (xmlpath, Glib::FILE_TEST_EXISTS)) {
+ error << string_compose(_("%1: session state information file \"%2\" doesn't exist!"), _name, xmlpath) << endmsg;
return 1;
}
}
@@ -896,10 +894,10 @@ Session::load_state (string snapshot_name)
set_dirty();
- _writable = exists_and_writable (xmlpath.to_string());
+ _writable = exists_and_writable (xmlpath);
- if (!state_tree->read (xmlpath.to_string())) {
- error << string_compose(_("Could not understand ardour file %1"), xmlpath.to_string()) << endmsg;
+ if (!state_tree->read (xmlpath)) {
+ error << string_compose(_("Could not understand ardour file %1"), xmlpath) << endmsg;
delete state_tree;
state_tree = 0;
return -1;
@@ -908,7 +906,7 @@ Session::load_state (string snapshot_name)
XMLNode& root (*state_tree->root());
if (root.name() != X_("Session")) {
- error << string_compose (_("Session file %1 is not a session"), xmlpath.to_string()) << endmsg;
+ error << string_compose (_("Session file %1 is not a session"), xmlpath) << endmsg;
delete state_tree;
state_tree = 0;
return -1;
@@ -934,19 +932,19 @@ Session::load_state (string snapshot_name)
if (Stateful::loading_state_version < CURRENT_SESSION_FILE_VERSION && _writable) {
- sys::path backup_path(_session_dir->root_path());
-
- backup_path /= string_compose ("%1-%2%3", legalize_for_path (snapshot_name), Stateful::loading_state_version, statefile_suffix);
+ std::string backup_path(_session_dir->root_path());
+ std::string backup_filename = string_compose ("%1-%2%3", legalize_for_path (snapshot_name), Stateful::loading_state_version, statefile_suffix);
+ backup_path = Glib::build_filename (backup_path, backup_filename);
// only create a backup for a given statefile version once
- if (!Glib::file_test (backup_path.to_string(), Glib::FILE_TEST_EXISTS)) {
+ if (!Glib::file_test (backup_path, Glib::FILE_TEST_EXISTS)) {
info << string_compose (_("Copying old session file %1 to %2\nUse %2 with %3 versions before 2.0 from now on"),
- xmlpath.to_string(), backup_path.to_string(), PROGRAM_NAME)
+ xmlpath, backup_path, PROGRAM_NAME)
<< endmsg;
- if (!copy_file (xmlpath.to_string(), backup_path.to_string())) {;
+ if (!copy_file (xmlpath, backup_path)) {;
return -1;
}
}