fix crash on OS X el capitan when using command line arguments

This commit is contained in:
Paul Davis 2016-09-29 13:05:38 -04:00
parent 99c8e51918
commit 587439acf8
1 changed files with 12 additions and 0 deletions

View File

@ -3125,7 +3125,19 @@ ARDOUR_UI::build_session_from_dialog (SessionDialog& sd, const std::string& sess
void
ARDOUR_UI::load_from_application_api (const std::string& path)
{
/* OS X El Capitan (and probably later) now somehow passes the command
line arguments to an app via the openFile delegate protocol. Ardour
already does its own command line processing, and having both
pathways active causes crashes. So, if the command line was already
set, do nothing here.
*/
if (!ARDOUR_COMMAND_LINE::session_name.empty()) {
return;
}
ARDOUR_COMMAND_LINE::session_name = path;
/* Cancel SessionDialog if it's visible to make OSX delegates work.
*
* ARDOUR_UI::starting connects app->ShouldLoad signal and then shows a SessionDialog