Bug 1466573 - Write profile prefs before constructing command. r?whimboo
MozReview-Commit-ID: 5XWglxjQvZh
--- a/testing/mozbase/rust/mozrunner/src/runner.rs
+++ b/testing/mozbase/rust/mozrunner/src/runner.rs
@@ -246,36 +246,36 @@ impl Runner for FirefoxRunner {
where
T: Into<Stdio>,
{
self.stderr = Some(stderr.into());
self
}
fn start(mut self) -> Result<FirefoxProcess, RunnerError> {
+ self.profile.user_prefs()?.write()?;
+
let stdout = self.stdout.unwrap_or_else(|| Stdio::inherit());
let stderr = self.stderr.unwrap_or_else(|| Stdio::inherit());
let mut cmd = Command::new(&self.binary);
cmd.args(&self.args[..])
.envs(&self.envs)
.stdout(stdout)
.stderr(stderr);
if !self.args.iter().any(|x| is_profile_arg(x)) {
cmd.arg("-profile").arg(&self.profile.path);
}
cmd.stdout(Stdio::inherit()).stderr(Stdio::inherit());
- self.profile.user_prefs()?.write()?;
-
info!("Running command: {:?}", cmd);
let process = cmd.spawn()?;
Ok(FirefoxProcess {
- process: process,
+ process,
profile: self.profile
})
}
}
fn parse_arg_name<T>(arg: T) -> Option<String>
where
T: AsRef<OsStr>,