mirror of
https://github.com/servo/servo.git
synced 2025-06-11 01:50:10 +00:00
script: Move navigation fetching to the ScriptThread
(#34919)
This allows reusing the asynchrnous fetch mechanism that we use for page resources and is likely a step toward removing the `FetchThread`. Benefits: - Reduces IPC traffic during navigation. Now instead of bouncing between the constellation and the `ScriptThread` responses are sent directly to the `ScriptThread`. - Allows cancelling loads after redirects, which was not possible before. There is the question of what to do when a redirect is cross-origin (#23037). This currently isn't handled properly as the `Constellation` sends data to the same `Pipeline` that initiated the load. This change doesn't fix this issue, but does make it more possible for the `ScriptThread` to shut down the pipeline and ask the `Constellation` to replace it with a new one. Signed-off-by: Martin Robinson <mrobinson@igalia.com>
This commit is contained in:
parent
73c0701c83
commit
fbd77b4524
16 changed files with 420 additions and 460 deletions
|
@ -141,6 +141,7 @@ impl DocumentLoader {
|
|||
fetch_async(
|
||||
&self.resource_threads.core_thread,
|
||||
request,
|
||||
None, /* response_init */
|
||||
Some(canceller),
|
||||
callback,
|
||||
);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue