From: Bennet Bleßmann Date: Sat, 19 Jul 2025 23:25:16 +0000 (+0200) Subject: adjust default cwd X-Git-Tag: v0.10.0~35^2^2~29 X-Git-Url: https://git.sagredo.dev/?a=commitdiff_plain;h=183761eba4b12b9f352655014bdc7b87d479ac24;p=scryer-prolog.git adjust default cwd --- diff --git a/src/lib/process.pl b/src/lib/process.pl index 6215355f..06e82a29 100644 --- a/src/lib/process.pl +++ b/src/lib/process.pl @@ -17,7 +17,7 @@ process_create(Exe, Args, Options) :- ([stderr], valid_stdio, stderr(std), stderr(Stderr)), ([env, environment], valid_env, environment([]), Env), ([pid], valid_pid, pid(_), pid(Pid)), - ([cwd], valid_cwd, cwd(_), cwd(Cwd)) + ([cwd], valid_cwd, cwd("."), cwd(Cwd)) ], Options ), diff --git a/src/machine/system_calls.rs b/src/machine/system_calls.rs index ecffbdb7..1ec6c988 100644 --- a/src/machine/system_calls.rs +++ b/src/machine/system_calls.rs @@ -8409,7 +8409,7 @@ impl Machine { let stderr_r = self.deref_register(5); // [env | environment, [[String, String],...]] let env_r = self.deref_register(6); - // Var | String + // String ("." for keep current cwd) let cwd_r = self.deref_register(7); // Var let pid_r = self.deref_register(8); @@ -8469,12 +8469,12 @@ impl Machine { }) .collect::, MachineStub>>()?; - let cwd = self.machine_st.value_to_str_like(cwd_r); + let cwd = self.machine_st.value_to_str_like(cwd_r).unwrap(); let mut command = std::process::Command::new(&*exe.as_str()); command.args(args); - if let Some(cwd) = cwd { + if &*cwd.as_str() != "." { command.current_dir(&*cwd.as_str()); }