diff options
author | bors-servo <lbergstrom+bors@mozilla.com> | 2019-12-19 16:16:56 -0500 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-12-19 16:16:56 -0500 |
commit | bac9903fbeed0a394a86c0091e727aada665433d (patch) | |
tree | 15f61a4fdcc8bbcc09f10a39e25495fb49cb9a75 /components/script_traits/lib.rs | |
parent | aa36d5f657eb32b59d994d08b177a02372b4b01c (diff) | |
parent | 6e8a85482c2068d4dbccb992954271f725570f91 (diff) | |
download | servo-bac9903fbeed0a394a86c0091e727aada665433d.tar.gz servo-bac9903fbeed0a394a86c0091e727aada665433d.zip |
Auto merge of #24123 - gterzian:redo_blob, r=jdm
Restructure Blob, structured serialization
<!-- Please describe your changes on the following line: -->
FIX #24052 and also address the "cloning" half of FIX #23917
---
<!-- Thank you for contributing to Servo! Please replace each `[ ]` by `[X]` when the step is complete, and replace `___` with appropriate data: -->
- [ ] `./mach build -d` does not report any errors
- [ ] `./mach test-tidy` does not report any errors
- [ ] These changes fix #___ (GitHub issue number if applicable)
<!-- Either: -->
- [ ] There are tests for these changes OR
- [ ] These changes do not require tests because ___
<!-- Also, please make sure that "Allow edits from maintainers" checkbox is checked, so that we can help you if you get stuck somewhere along the way.-->
<!-- Pull requests that do not address these steps are welcome, but they will require additional verification as part of the review process. -->
<!-- Reviewable:start -->
---
This change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/servo/servo/24123)
<!-- Reviewable:end -->
Diffstat (limited to 'components/script_traits/lib.rs')
-rw-r--r-- | components/script_traits/lib.rs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/components/script_traits/lib.rs b/components/script_traits/lib.rs index 6989d53eb72..8e6b89e12f9 100644 --- a/components/script_traits/lib.rs +++ b/components/script_traits/lib.rs @@ -17,9 +17,11 @@ extern crate malloc_size_of_derive; extern crate serde; mod script_msg; +pub mod serializable; pub mod transferable; pub mod webdriver_msg; +use crate::serializable::BlobImpl; use crate::transferable::MessagePortImpl; use crate::webdriver_msg::{LoadStatus, WebDriverScriptCommand}; use bluetooth_traits::BluetoothRequest; @@ -39,7 +41,9 @@ use libc::c_void; use log::warn; use media::WindowGLContext; use msg::constellation_msg::BackgroundHangMonitorRegister; -use msg::constellation_msg::{BrowsingContextId, HistoryStateId, MessagePortId, PipelineId}; +use msg::constellation_msg::{ + BlobId, BrowsingContextId, HistoryStateId, MessagePortId, PipelineId, +}; use msg::constellation_msg::{PipelineNamespaceId, TopLevelBrowsingContextId, TraversalDirection}; use net_traits::image::base::Image; use net_traits::image_cache::ImageCache; @@ -1039,6 +1043,8 @@ impl ScriptToConstellationChan { pub struct StructuredSerializedData { /// Data serialized by SpiderMonkey. pub serialized: Vec<u8>, + /// Serialized in a structured callback, + pub blobs: Option<HashMap<BlobId, BlobImpl>>, /// Transferred objects. pub ports: Option<HashMap<MessagePortId, MessagePortImpl>>, } |