Join GitHub today
GitHub is home to over 50 million developers working together to host and review code, manage projects, and build software together.
Sign upSupport multiprocess constellation on Windows #13609
Conversation
highfive
commented
Oct 6, 2016
|
Heads up! This PR modifies the following files:
|
| @@ -530,13 +529,40 @@ impl UnprivilegedPipelineContent { | |||
| Ok(child_process) | |||
| } | |||
|
|
|||
| // gaol is not supported on Windows yet, so this is just multiprocess | |||
| // without sandboxing | |||
This comment has been minimized.
This comment has been minimized.
jdm
Oct 13, 2016
Member
My preference would be to add a cfg block to the existing non-Windows code rather than duplicating the non-sandbox pieces here.
This comment has been minimized.
This comment has been minimized.
vvuk
Oct 20, 2016
Author
Contributor
The reason I didn't do that is that we don't have the gaol crate available on Windows at all. cfg!(...) evaluates to a boolean, so the types would still need to be available for both paths through the function. Is there a way to do this that I'm not seeing? The only other way I could think of was to create separate spawn_sandboxed() and spawn_unsandboxed() methods that spawn_multiprocess calls, and then have a windows-only spawn_sandboxed that panics.
With my latest changes at servo/ipc-channel#108, multiprocess Servo works on Windows.
|
|
|
@jdm Are you ok with repeating these few lines of code for now? Should we land this? |
|
We need servo/ipc-channel#108 to merge before this can. I'm ok with the code duplication. |
|
No need to keep this open indefinitely. |
vvuk commentedOct 6, 2016
•
edited by larsbergstrom
Allow
-Mon windows to use multiprocess mode. Sandboxing is still disallowed, asgaolis not implemented on Windows. This depends on servo/ipc-channel#108 to provide windows support in ipc-channel. At the moment this causes a panic in ipc-channel when run with multiprocess (works fine single process), but I wanted to put this up so that others can test../mach build -ddoes not report any errors./mach test-tidydoes not report any errorsThis change is