Delay the writing of the been-here-before file until a bit later, in case the user cancels at some point during setup (#4434).
git-svn-id: svn://localhost/ardour2/branches/3.0@10489 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
parent
5bd34bd84c
commit
9fa8238d9d
@ -121,9 +121,7 @@ Ardour will play NO role in monitoring"))
|
|||||||
set_default_icon_list (window_icons);
|
set_default_icon_list (window_icons);
|
||||||
}
|
}
|
||||||
|
|
||||||
sys::path been_here_before = user_config_directory();
|
new_user = !exists (been_here_before_path ());
|
||||||
been_here_before /= ".a3"; // XXXX use more specific version so we can catch upgrades
|
|
||||||
new_user = !exists (been_here_before);
|
|
||||||
|
|
||||||
bool need_audio_setup = !EngineControl::engine_running();
|
bool need_audio_setup = !EngineControl::engine_running();
|
||||||
|
|
||||||
@ -141,8 +139,6 @@ Ardour will play NO role in monitoring"))
|
|||||||
error << "Could not create user configuration directory" << endmsg;
|
error << "Could not create user configuration directory" << endmsg;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* "touch" the file */
|
|
||||||
ofstream fout (been_here_before.to_string().c_str());
|
|
||||||
setup_new_user_page ();
|
setup_new_user_page ();
|
||||||
setup_first_time_config_page ();
|
setup_first_time_config_page ();
|
||||||
setup_monitoring_choice_page ();
|
setup_monitoring_choice_page ();
|
||||||
@ -645,6 +641,9 @@ ArdourStartup::on_apply ()
|
|||||||
|
|
||||||
Config->set_use_monitor_bus (use_monitor_section_button.get_active());
|
Config->set_use_monitor_bus (use_monitor_section_button.get_active());
|
||||||
|
|
||||||
|
/* "touch" the been-here-before path now that we're about to save Config */
|
||||||
|
ofstream fout (been_here_before_path().to_string().c_str());
|
||||||
|
|
||||||
Config->save_state ();
|
Config->save_state ();
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1378,3 +1377,12 @@ ArdourStartup::existing_session_selected ()
|
|||||||
set_page_complete (session_vbox, true);
|
set_page_complete (session_vbox, true);
|
||||||
move_along_now ();
|
move_along_now ();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
sys::path
|
||||||
|
ArdourStartup::been_here_before_path () const
|
||||||
|
{
|
||||||
|
sys::path b = user_config_directory();
|
||||||
|
b /= ".a3"; // XXXX use more specific version so we can catch upgrades
|
||||||
|
return b;
|
||||||
|
}
|
||||||
|
|
||||||
|
@ -39,6 +39,8 @@
|
|||||||
#include <gtkmm/liststore.h>
|
#include <gtkmm/liststore.h>
|
||||||
#include <gtkmm/combobox.h>
|
#include <gtkmm/combobox.h>
|
||||||
|
|
||||||
|
#include "pbd/filesystem.h"
|
||||||
|
|
||||||
#include "ardour/utils.h"
|
#include "ardour/utils.h"
|
||||||
|
|
||||||
class EngineControl;
|
class EngineControl;
|
||||||
@ -85,6 +87,8 @@ class ArdourStartup : public Gtk::Assistant {
|
|||||||
bool new_user;
|
bool new_user;
|
||||||
bool new_only;
|
bool new_only;
|
||||||
|
|
||||||
|
PBD::sys::path been_here_before_path () const;
|
||||||
|
|
||||||
void on_apply ();
|
void on_apply ();
|
||||||
void on_cancel ();
|
void on_cancel ();
|
||||||
bool on_delete_event (GdkEventAny*);
|
bool on_delete_event (GdkEventAny*);
|
||||||
|
Loading…
Reference in New Issue
Block a user