src/Pure/System/isabelle_process.scala
changeset 56390 8185044353fd
parent 56387 d92eb5c3960d
child 56617 c00646996701
equal deleted inserted replaced
56389:e49561ae3b65 56390:8185044353fd
    72 
    72 
    73 
    73 
    74 
    74 
    75   /** process manager **/
    75   /** process manager **/
    76 
    76 
       
    77   def command_line(channel: System_Channel, args: List[String]): List[String] =
       
    78     Isabelle_System.getenv_strict("ISABELLE_PROCESS") :: (channel.isabelle_args ::: args)
       
    79 
    77   private val system_channel = System_Channel()
    80   private val system_channel = System_Channel()
    78 
    81 
    79   private val process =
    82   private val process =
    80     try {
    83     try {
    81       val cmdline =
    84       val cmdline = command_line(system_channel, prover_args)
    82         Isabelle_System.getenv_strict("ISABELLE_PROCESS") ::
       
    83           (system_channel.isabelle_args ::: prover_args)
       
    84       new Isabelle_System.Managed_Process(null, null, false, cmdline: _*)
    85       new Isabelle_System.Managed_Process(null, null, false, cmdline: _*)
    85     }
    86     }
    86     catch { case e: IOException => system_channel.accepted(); throw(e) }
    87     catch { case e: IOException => system_channel.accepted(); throw(e) }
    87 
    88 
    88   private val (_, process_result) =
    89   private val (_, process_result) =