src/Pure/System/isabelle_process.scala
changeset 69572 09a6a7c04b45
parent 68209 aeffd8f1f079
child 71594 8a298184f3f9
equal deleted inserted replaced
69571:676182f2e375 69572:09a6a7c04b45
    47     store: Option[Sessions.Store] = None): Prover =
    47     store: Option[Sessions.Store] = None): Prover =
    48   {
    48   {
    49     val channel = System_Channel()
    49     val channel = System_Channel()
    50     val process =
    50     val process =
    51       try {
    51       try {
    52         ML_Process(options, logic = logic, args = args, dirs = dirs, modes = modes, cwd = cwd,
    52         val channel_options =
    53           env = env, sessions_structure = sessions_structure, store = store, channel = Some(channel))
    53           options.string.update("system_channel_address", channel.address).
       
    54             string.update("system_channel_password", channel.password)
       
    55         ML_Process(channel_options, logic = logic, args = args, dirs = dirs, modes = modes,
       
    56             cwd = cwd, env = env, sessions_structure = sessions_structure, store = store)
    54       }
    57       }
    55       catch { case exn @ ERROR(_) => channel.accepted(); throw exn }
    58       catch { case exn @ ERROR(_) => channel.shutdown(); throw exn }
    56     process.stdin.close
    59     process.stdin.close
    57 
    60 
    58     new Prover(receiver, xml_cache, channel, process)
    61     new Prover(receiver, xml_cache, channel, process)
    59   }
    62   }
    60 }
    63 }