Bug 1466573 - Write profile prefs before constructing command. r?whimboo draft
authorAndreas Tolfsen <ato@sny.no>
Tue, 05 Jun 2018 15:08:07 +0100
changeset 806432 1ce57da6d0504dde55a698c53ffe118a87bd78d9
parent 806420 21bc698a4d9c52fa2d9f6fb04e554ad4eca29499
child 806433 7d029da80d6cfb2263f20c71699ca21678bc6c06
push id112879
push userbmo:ato@sny.no
push dateSat, 09 Jun 2018 14:27:10 +0000
reviewerswhimboo
bugs1466573
milestone62.0a1
Bug 1466573 - Write profile prefs before constructing command. r?whimboo MozReview-Commit-ID: 5XWglxjQvZh
testing/mozbase/rust/mozrunner/src/runner.rs
--- 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>,