diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2008-12-02 06:48:53 +0000 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2008-12-02 06:48:53 +0000 |
commit | 4fc93e9381c44e4a7f1be787727a65caacae50aa (patch) | |
tree | d154fb1f88267d09c993da2bae997d349ca27be3 /libs | |
parent | 71ac083429575ea21ffff97c07a2ec18c4852cc7 (diff) |
more session init fixes from carl
git-svn-id: svn://localhost/ardour2/branches/2.0-ongoing@4278 d708f5d6-7413-0410-9779-e7cbd77b26cf
Diffstat (limited to 'libs')
-rw-r--r-- | libs/ardour/session.cc | 38 | ||||
-rw-r--r-- | libs/ardour/session_state.cc | 7 |
2 files changed, 22 insertions, 23 deletions
diff --git a/libs/ardour/session.cc b/libs/ardour/session.cc index 8524aef918..6754a5125c 100644 --- a/libs/ardour/session.cc +++ b/libs/ardour/session.cc @@ -276,16 +276,23 @@ Session::Session (AudioEngine &eng, string mix_template) : _engine (eng), + mmc (0), _mmc_port (default_mmc_port), _mtc_port (default_mtc_port), _midi_port (default_midi_port), pending_events (2048), + state_tree (0), + butler_mixdown_buffer (0), + butler_gain_buffer (0), + midi_thread (pthread_t (0)), midi_requests (128), // the size of this should match the midi request pool size diskstreams (new DiskstreamList), routes (new RouteList), auditioner ((Auditioner*) 0), _total_free_4k_blocks (0), _click_io ((IO*) 0), + click_data (0), + click_emphasis_data (0), main_outs (0) { bool new_session; @@ -340,14 +347,23 @@ Session::Session (AudioEngine &eng, nframes_t initial_length) : _engine (eng), + mmc (0), _mmc_port (default_mmc_port), _mtc_port (default_mtc_port), _midi_port (default_midi_port), pending_events (2048), + state_tree (0), + butler_mixdown_buffer (0), + butler_gain_buffer (0), + midi_thread (pthread_t (0)), midi_requests (16), diskstreams (new DiskstreamList), routes (new RouteList), + auditioner ((Auditioner *) 0), _total_free_4k_blocks (0), + _click_io ((IO *) 0), + click_data (0), + click_emphasis_data (0), main_outs (0) { @@ -455,19 +471,16 @@ Session::destroy () _history.clear (); /* clear state tree so that no references to objects are held any more */ - - if (state_tree) { - delete state_tree; - } + delete state_tree; terminate_butler_thread (); terminate_midi_thread (); - if (click_data && click_data != default_click) { + if (click_data != default_click) { delete [] click_data; } - if (click_emphasis_data && click_emphasis_data != default_click_emphasis) { + if (click_emphasis_data != default_click_emphasis) { delete [] click_emphasis_data; } @@ -635,19 +648,12 @@ Session::destroy () i = tmp; } - if (butler_mixdown_buffer) { - delete [] butler_mixdown_buffer; - } - - if (butler_gain_buffer) { - delete [] butler_gain_buffer; - } + delete [] butler_mixdown_buffer; + delete [] butler_gain_buffer; Crossfade::set_buffer_size (0); - if (mmc) { - delete mmc; - } + delete mmc; } void diff --git a/libs/ardour/session_state.cc b/libs/ardour/session_state.cc index 2b7aca67a7..c769e57025 100644 --- a/libs/ardour/session_state.cc +++ b/libs/ardour/session_state.cc @@ -155,7 +155,6 @@ Session::first_stage_init (string fullpath, string snapshot_name) pending_locate_roll = false; pending_locate_flush = false; dstream_buffer_size = 0; - state_tree = 0; state_was_pending = false; set_next_event (); outbound_mtc_smpte_frame = 0; @@ -171,9 +170,6 @@ Session::first_stage_init (string fullpath, string snapshot_name) _slave = 0; _silent = false; - butler_mixdown_buffer = 0; - butler_gain_buffer = 0; - mmc = 0; session_send_mmc = false; session_send_mtc = false; post_transport_work = PostTransportWork (0); @@ -194,7 +190,6 @@ Session::first_stage_init (string fullpath, string snapshot_name) first_file_data_format_reset = true; first_file_header_format_reset = true; butler_thread = (pthread_t) 0; - midi_thread = (pthread_t) 0; AudioDiskstream::allocate_working_buffers(); @@ -211,8 +206,6 @@ Session::first_stage_init (string fullpath, string snapshot_name) waveforms for clicks. */ - click_data = 0; - click_emphasis_data = 0; click_length = 0; click_emphasis_length = 0; _clicking = false; |