···198198199199 let apply_pair (a, b) f = f a b
200200 let ( ||> ) = apply_pair
201201- let get_env ?(extra = []) () = Eunix.env () @ extra
201201+202202+ let get_env ?(extra = []) () =
203203+ let env = Eunix.env () in
204204+ let rec loop = function
205205+ | [] -> []
206206+ | (k, v) :: rest -> (
207207+ match List.assoc_opt k extra with
208208+ | Some v' -> (k, v') :: loop rest
209209+ | None -> (k, v) :: loop rest)
210210+ in
211211+ loop env
202212203213 let rec execute_commands initial_ctx local_switch p =
204214 let rec loop (exit_ctx : ctx Exit.t)