Bug 1390486 - Add "dom.file.createInChild" preference to recommended prefs.
To allow geckodriver to create file objects in child processes, this
preference has to be set to true. As such it needs to be recommended
in Marionette and set as default preference for geckodriver.
MozReview-Commit-ID: 8bdbi5jH6Vc
--- a/testing/geckodriver/CHANGES.md
+++ b/testing/geckodriver/CHANGES.md
@@ -1,15 +1,16 @@
# Change log
All notable changes to this program is documented in this file.
## Unreleased
### Added
+- Added preference `dom.file.createInChild` set to true to allow file object creation in content processes.
- New window `state` field on the window rect response object, returned from [`GetWindowRect`], [`SetWindowRect`], [`MinimizeWindow`], [`MaximizeWindow`], and [`FullscreenWindow`] commands
[`FullscreenWindow`]: https://docs.rs/webdriver/0.29.0/webdriver/command/enum.WebDriverCommand.html#variant.FullscreenWindow
[`GetWindowRect`]: https://docs.rs/webdriver/0.29.0/webdriver/command/enum.WebDriverCommand.html#variant.GetWindowRect
[`MaximizeWindow`]: https://docs.rs/webdriver/0.29.0/webdriver/command/enum.WebDriverCommand.html#variant.MaximizeWindow
[`MinimizeWindow`]: https://docs.rs/webdriver/0.29.0/webdriver/command/enum.WebDriverCommand.html#variant.MinimizeWindow
[`SetWindowRect`]: https://docs.rs/webdriver/0.29.0/webdriver/command/enum.WebDriverCommand.html#variant.SetWindowRect
--- a/testing/geckodriver/src/prefs.rs
+++ b/testing/geckodriver/src/prefs.rs
@@ -1,12 +1,12 @@
use mozprofile::preferences::Pref;
lazy_static! {
- pub static ref DEFAULT: [(&'static str, Pref); 79] = [
+ pub static ref DEFAULT: [(&'static str, Pref); 80] = [
// Disable automatic downloading of new releases
("app.update.auto", Pref::new(false)),
// Disable automatically upgrading Firefox
("app.update.enabled", Pref::new(false)),
// Increase the APZ content response timeout in tests to 1
// minute. This is to accommodate the fact that test environments
@@ -119,16 +119,19 @@ lazy_static! {
("datareporting.healthreport.uploadEnabled", Pref::new(false)),
("datareporting.policy.dataSubmissionEnabled", Pref::new(false)),
("datareporting.policy.dataSubmissionPolicyAccepted", Pref::new(false)),
("datareporting.policy.dataSubmissionPolicyBypassNotification", Pref::new(true)),
// Disable popup-blocker
("dom.disable_open_during_load", Pref::new(false)),
+ // Enabling the support for File object creation in the content process
+ ("dom.file.createInChild", Pref::new(true)),
+
// Disable the ProcessHangMonitor
("dom.ipc.reportProcessHangs", Pref::new(false)),
// Disable slow script dialogues
("dom.max_chrome_script_run_time", Pref::new(0)),
("dom.max_script_run_time", Pref::new(0)),
// Only load extensions from the application and user profile
--- a/testing/marionette/server.js
+++ b/testing/marionette/server.js
@@ -177,16 +177,19 @@ const RECOMMENDED_PREFS = new Map([
["datareporting.healthreport.uploadEnabled", false],
["datareporting.policy.dataSubmissionEnabled", false],
["datareporting.policy.dataSubmissionPolicyAccepted", false],
["datareporting.policy.dataSubmissionPolicyBypassNotification", true],
// Disable popup-blocker
["dom.disable_open_during_load", false],
+ // Enabling the support for File object creation in the content process
+ ["dom.file.createInChild", true],
+
// Disable the ProcessHangMonitor
["dom.ipc.reportProcessHangs", false],
// Disable slow script dialogues
["dom.max_chrome_script_run_time", 0],
["dom.max_script_run_time", 0],
// Only load extensions from the application and user profile