summaryrefslogtreecommitdiff
path: root/libs
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-09-11 09:59:56 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-09-11 09:59:56 -0400
commit7c719e441a834067c1b35e51f891fd4c1a252e76 (patch)
tree843ef991de9046024454df7e8b10c5e814ee18da /libs
parentd305dc1e0c3b04c6b014e443c3234d7864d73073 (diff)
fix handling of new session
defer save state till after everything done in post_engine_init() is complete.
Diffstat (limited to 'libs')
-rw-r--r--libs/ardour/session.cc1
-rw-r--r--libs/ardour/session_state.cc8
2 files changed, 5 insertions, 4 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc
index 9934d5a095..6f0638bdc9 100644
--- a/libs/ardour/session.cc
+++ b/libs/ardour/session.cc
@@ -1466,6 +1466,7 @@ Session::set_frame_rate (framecnt_t frames_per_second)
*/
_base_frame_rate = frames_per_second;
+ _nominal_frame_rate = frames_per_second;
sync_time_vars();
diff --git a/libs/ardour/session_state.cc b/libs/ardour/session_state.cc
index b4364f4c13..dbb2d4edcd 100644
--- a/libs/ardour/session_state.cc
+++ b/libs/ardour/session_state.cc
@@ -312,8 +312,10 @@ Session::post_engine_init ()
DirtyChanged (); /* EMIT SIGNAL */
- if (state_was_pending) {
- save_state (_current_snapshot_name);
+ if (_is_new) {
+ save_state ("");
+ } else if (state_was_pending) {
+ save_state ("");
remove_pending_capture_state ();
state_was_pending = false;
}
@@ -546,8 +548,6 @@ Session::create (const string& session_template, BusProfile* bus_profile)
add_monitor_section ();
}
- save_state ("");
-
return 0;
}