always add a timeout value of 200msec to jack, just like qjackctl does.
authorPaul Davis <paul@linuxaudiosystems.com>
Thu, 12 Sep 2013 01:00:21 +0000 (21:00 -0400)
committerPaul Davis <paul@linuxaudiosystems.com>
Thu, 12 Sep 2013 01:00:21 +0000 (21:00 -0400)
THIS IS A HACK. LONG TERM GOAL: understand why ardour gets zombified on the way up.

libs/backends/jack/jack_utils.cc
libs/backends/jack/jack_utils.h

index 77f3d95aa10c6ab370737bbf00712edb516a2363..93fc3d440a75a5385d46681c40c968c3d57ee01e 100644 (file)
@@ -682,7 +682,7 @@ ARDOUR::JackCommandLineOptions::JackCommandLineOptions ()
 }
 
 bool
-ARDOUR::get_jack_command_line_string (const JackCommandLineOptions& options, string& command_line)
+ARDOUR::get_jack_command_line_string (JackCommandLineOptions& options, string& command_line)
 {
        vector<string> args;
 
@@ -699,6 +699,11 @@ ARDOUR::get_jack_command_line_string (const JackCommandLineOptions& options, str
        }
 #endif
 
+       /* XXX hack to enforce qjackctl-like behaviour */
+       if (options.timeout == 0) {
+               options.timeout = 200;
+       }
+
        if (options.timeout) {
                args.push_back ("-t");
                args.push_back (to_string (options.timeout, std::dec));
index 7565353198d76a1e99547551b9220fee01ad5c27..a7521ad1c42b486b76c86fab7a6c85b858a00f04 100644 (file)
@@ -231,5 +231,5 @@ namespace ARDOUR {
        /**
         * @return true if able to build a valid command line based on options
         */
-       bool get_jack_command_line_string (const JackCommandLineOptions& options, std::string& command_line);
+       bool get_jack_command_line_string (JackCommandLineOptions& options, std::string& command_line);
 }